当前位置: 首页 > news >正文

C语言—每日选择题—Day48

第一题

1. 已知宏定义: #define M y*y+3*y , 则表达式 s=3*M+4*M+y*M 预处理阶段后的结果是

A:s=3*(y*y+3*y)+4*(y*y+3*y)+y*(y*y+3*y)

B:s=3*(y*y)+3*y+4*(y*y)+3*y+y*(y*y)+3*y

C:s=3*y*y+3*y+4*y*y+3*y+y*y*y+3*y

D:s=3*(y*y)+(3*y)+4*(y*y)+(3*y)+y*(y*y)+(3*y)

答案及解析 C

你要记住,一个.c文件在运行之前,是要经过预处理--编译--汇编--链接这几个阶段的;

通过历史 --> 了解翻译环境(预处理、编译、汇编、链接)-CSDN博客

预处理阶段对于宏就是直接替换,替换就是原封不动地换,只要无中生有就是错,所以只有C是对的,其他都多加了括号

第二题

2. int (*p)[5]; 定义的是

A:p是一个指针数组,该数组中的每一个元素都是一个整型指针

B:p是一个数组的指针,该指针指向一个长度为5的整型数组

C:p是一个函数指针,该指针指向一个参数为5的函数

D:p是一个指针函数,该函数的返回值为一个整型指针

答案及解析 B

        因为这里是用括号将*p括起来了,所以p先和*结合,形成指针,指针指向的是int [5],数组类型。所以这个p是一个数组指针,指向的是一个长度为5的整型数组。

第三题(涉及操作系统)

3. 使用C语言将一个1G字节的字符数组从头到尾全部设置为字’A’,在一台典型的当代PC上,需要花费的CPU时间的数量级最接近()

A:0.001秒

B:1秒

C:100秒

D:2小时

答案及解析 B

        本题涉及里操作系统的知识,但是我写到C语言的原因就是,等大家学到操作系统之后,就会发现大多数的操作系统都是用C语言写的,里面的指令也是用C语言写的程序,这个时候你会感觉到C生万物!

        执行1条语句约 1ns 即10的-9次方秒

        1G = 1024M = 1024 * 1024kb = 1024 * 1024 * 1024 byte

        每次赋值1byte都要执行一次语句

        所以至少花1024 * 1024 * 1024 * 10 ^(-9)= 1.073741824s,最接近一秒。

第四题

4. 下面各输入语句中错误的是()

struct ss
{char name[10];int age;char sex;
} std[3], *p = std;

A:scanf("%d", &(*p).age);

B:scanf("%s", &std.name);

C:scanf("%c", &std[0].sex);

D:scanf("%c", &(p->sex));

答案及解析 B

本题考查的是如何对拿出结构体的成员,如果大家对操作符优先级不熟悉,先看这个博客:

C语言操作符优先级表格(建议收藏,每次看一下)-CSDN博客

首先看*p = std;

这是定义的一个结构体指针,C语言允许在声明之后定义;相当于struct ss *p ;

结构体指针访问成员变量需要用 ->

A:正确:这里是先把p解引用了,*p也就是一个结构体变量,结构体变量访问成员就用 '.'

之后拿到age,是一个整型,输入的时候需要取地址;

D:正确:这里就是直接用结构体指针访问成员,取到的是sex字符类型的变量,输入的时候依旧是要取地址。

而在后面定义的std[3],这是一个结构体的数组,数组元素都是一个一个的结构体;

B:错误:std是数组名,数组名是首元素地址,也就是第一个结构体的地址,是结构体指针,结构体指针访问成员是需要->,这里用 '.'错误;

C:正确:std[0]是一个结构体,访问的是sex这个成员,输入的时候取地址;

第五题

5.下面程序运行的结果是()

#include<stdio.h>
void add(int *p)
{(*p)++;printf("%d", *p);if (*p > 5){return;}add(p);
}
int main()
{int i = 0;add(&i);return 0;
}

A:12345

B:123456

C:111111

D:未知

答案及解析 B

本题考查的是递归,只要你能弄明白递归,这个题就没问题;还有一点就是p是地址,一直都是传地址,所以对*p修改一直影响i的大小;

相关文章:

C语言—每日选择题—Day48

第一题 1. 已知宏定义&#xff1a; #define M y*y3*y &#xff0c; 则表达式 s3*M4*My*M 预处理阶段后的结果是 A&#xff1a;s3*(y*y3*y)4*(y*y3*y)y*(y*y3*y) B&#xff1a;s3*(y*y)3*y4*(y*y)3*yy*(y*y)3*y C&#xff1a;s3*y*y3*y4*y*y3*yy*y*y3*y D&#xff1a;s3*(y*y)(3…...

华为OD试题七(IPv4地址转换成整数、比赛的冠亚季军)

1. IPv4地址转换成整数 示例代码&#xff1a; #测试数据 s1 "100#101#1#5"def fun(s):s_list s.split("#")# 转化成十六进制数 左边补零s_16_list [hex(int(_))[2:].zfill(2) for _ in s_list]s_16_str .join(s_16_list)return int(s_16_str,16) r f…...

SVN优缺点详解及版本控制系统选型建议

Subversion (SVN)是目前可用的众多版本控制选项之一。本篇文章将全面概述什么是 SVN、SVN的历史、SVN存储库是什么&#xff0c;以及在切换到SVN之前您应该谨慎考虑的潜在问题。 什么是Subversion&#xff08;SVN&#xff09;&#xff1f; Subversion软件&#xff0c;也称为SV…...

自己动手写数据库: select 查询语句对应查询树的构造和执行

首先我们需要给原来代码打个补丁&#xff0c;在SelectScan 结构体初始化时需要传入 UpdateScan 接口对象&#xff0c;但很多时候我们需要传入的是 Scan 对象&#xff0c;因此我们需要做一个转换&#xff0c;也就是当初始化 SelectScan 时&#xff0c;如果传入的是 Scan 对象&am…...

扬声器(喇叭)

扬声器(喇叭) 电子元器件百科 文章目录 扬声器(喇叭)前言一、扬声器(喇叭)是什么二、扬声器(喇叭)的类别三、扬声器(喇叭)的应用场景四、扬声器(喇叭)的作用原理总结前言 扬声器广泛应用于音响系统、公共广播系统、汽车音响、电视、电脑和移动设备等各种电子设备…...

汇总大厂-校招/社招 Java面试题--持续补充更新中-大家别光收藏,要看起来,巩固基础,就是干呀!

** 接上篇-汇总大厂-校招/社招 Java面试题&#xff08;补充&#xff09; ** markdown文件。持续更新中&#xff08;阿里、腾讯、网易、美团、京东、华为、快手、字节…&#xff09; 上面这篇也结合着看啊&#xff0c;通宵给整理出来的。 如需下载整套资料。关注公众号后台。…...

六. 函数

基本使用 ts与js一样拥有具名函数和匿名函数两种函数类型。但是ts的函数需要提前定义好参数类型以及函数的返回值类型。 具名函数 function add(num1: number, num2: number):number {return num1 num2 }匿名函数 匿名函数的定义相对麻烦&#xff0c;我们需要提前定义函数的…...

SpringBoot的Starter自动化配置,自己编写配置maven依赖且使用及短信发送案例

目录 一、Starter机制 1. 是什么 2. 有什么用 3. 应用场景 二、短信发送案例 1. 创建 2. 配置 3. 编写 4. 形成依赖 6. 其他项目的使用 每篇一获 一、Starter机制 1. 是什么 SpringBoot中的starter是一种非常重要的机制(自动化配置)&#xff0c;能够抛弃以前繁杂…...

<蓝桥杯软件赛>零基础备赛20周--第9周--前缀和与差分

报名明年4月蓝桥杯软件赛的同学们&#xff0c;如果你是大一零基础&#xff0c;目前懵懂中&#xff0c;不知该怎么办&#xff0c;可以看看本博客系列&#xff1a;备赛20周合集 20周的完整安排请点击&#xff1a;20周计划 每周发1个博客&#xff0c;共20周&#xff08;读者可以按…...

LeetCode-2487. 从链表中移除节点【栈 递归 链表 单调栈】

LeetCode-2487. 从链表中移除节点【栈 递归 链表 单调栈】 题目描述&#xff1a;解题思路一&#xff1a;可以将链表转为数组&#xff0c;然后从后往前遍历&#xff0c;遇到大于等于当前元素的就入栈&#xff0c;最终栈里面的元素即是最终的答案。解题思路二&#xff1a;递归&am…...

Redisson分布式锁原理分析

1.Redisson实现分布式锁 在分布式系统中&#xff0c;涉及到多个实例对同一资源加锁的情况&#xff0c;传统的synchronized、ReentrantLock等单进程加锁的API就不再适用&#xff0c;此时就需要使用分布式锁来保证多服务之间加锁的安全性。 常见的分布式锁的实现方式有&#xff…...

【Linux】:线程(二)互斥

互斥与同步 一.线程的局部存储二.线程的分离三.互斥1.一些概念2.上锁3.锁的原理4.死锁 一.线程的局部存储 例子 可以看到全局变量是所有线程共享的&#xff0c;如果我们想要每个线程都单独访问g_val怎么办呢&#xff1f;其实我们可以在它前面加上__thread修饰。 这就相当于把g…...

vscode报错Pylance client: couldn‘t create connection to server.

问题描述&#xff1a; 一打开vscode&#xff0c;右下角就弹报错&#xff0c;Pylance client: couldn’t create connection to server.&#xff0c;让我打开output&#xff0c;打开后似乎是在说连不上server 因为连不上server&#xff0c;所以我的python代码没法解析&#xff0…...

智能优化算法应用:基于萤火虫算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于萤火虫算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于萤火虫算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.萤火虫算法4.实验参数设定5.算法结果6.参考文…...

MacOS多屏状态栏位置不固定,程序坞不小心跑到副屏

目录 方式一&#xff1a;通过系统设置方式二&#xff1a;鼠标切换 MacOS多屏状态栏位置不固定&#xff0c;程序坞不小心跑到副屏 方式一&#xff1a;通过系统设置 先切换到左边 再切换到底部 就能回到主屏了 方式二&#xff1a;鼠标切换 我的两个屏幕放置位置如下 鼠标在…...

Python:pipdeptree 语法介绍

相信大家在按照一些包的时候经常会碰到版本不兼容&#xff0c;但是又不知道版本之间的依赖关系&#xff0c;今天给大家介绍一个工具&#xff1a;pipdeptree pipdeptree 是一个 Python 包&#xff0c;用于查看已安装的 pip 包及其依赖关系。它以树形结构展示包之间的依赖关系&am…...

【问题处理】—— lombok 的 @Data 大小写区分不敏感

问题描述 今天在项目本地编译的时候&#xff0c;发现有个很奇怪的问题&#xff0c;一直提示某位置找不到符号&#xff0c; 但是实际在Idea中显示确实正常的&#xff0c;一开始以为又是IDEA的故障&#xff0c;所以重启了IDEA&#xff0c;并执行了mvn clean然后重新编译。但是问…...

跟着我学Python基础篇:08.集合和字典

往期文章 跟着我学Python基础篇&#xff1a;01.初露端倪 跟着我学Python基础篇&#xff1a;02.数字与字符串编程 跟着我学Python基础篇&#xff1a;03.选择结构 跟着我学Python基础篇&#xff1a;04.循环 跟着我学Python基础篇&#xff1a;05.函数 跟着我学Python基础篇&#…...

Tomcat部署(图片和HTML等)静态资源时遇到的问题

文章目录 Tomcat部署静态资源问题图中HTML代码启动Tomcat后先确认Tomcat是否启动成功 Tomcat部署静态资源问题 今天&#xff0c;有人突然跟我提到&#xff0c;使用nginx部署静态资源&#xff0c;如图片。可以直接通过url地址访问&#xff0c;为什么他的Tomcat不能通过这样的方…...

在接触新的游戏引擎的时候,如何能快速地熟悉并开发出一款新游戏?

引言 大家好&#xff0c;今天分享点个人经验。 有一定编程经验或者游戏开发经验的小伙伴&#xff0c;在接触新的游戏引擎的时候&#xff0c;如何能快速地熟悉并开发出一款新游戏&#xff1f; 利用现成开发框架。 1.什么是开发框架&#xff1f; 开发框架&#xff0c;顾名思…...

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站&#xff0c;会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后&#xff0c;网站没有变化的情况。 不熟悉siteground主机的新手&#xff0c;遇到这个问题&#xff0c;就很抓狂&#xff0c;明明是哪都没操作错误&#x…...

前端倒计时误差!

提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...

线程同步:确保多线程程序的安全与高效!

全文目录&#xff1a; 开篇语前序前言第一部分&#xff1a;线程同步的概念与问题1.1 线程同步的概念1.2 线程同步的问题1.3 线程同步的解决方案 第二部分&#xff1a;synchronized关键字的使用2.1 使用 synchronized修饰方法2.2 使用 synchronized修饰代码块 第三部分&#xff…...

Caliper 配置文件解析:config.yaml

Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...

技术栈RabbitMq的介绍和使用

目录 1. 什么是消息队列&#xff1f;2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...

AI病理诊断七剑下天山,医疗未来触手可及

一、病理诊断困局&#xff1a;刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断"&#xff0c;医生需通过显微镜观察组织切片&#xff0c;在细胞迷宫中捕捉癌变信号。某省病理质控报告显示&#xff0c;基层医院误诊率达12%-15%&#xff0c;专家会诊…...

GitFlow 工作模式(详解)

今天再学项目的过程中遇到使用gitflow模式管理代码&#xff0c;因此进行学习并且发布关于gitflow的一些思考 Git与GitFlow模式 我们在写代码的时候通常会进行网上保存&#xff0c;无论是github还是gittee&#xff0c;都是一种基于git去保存代码的形式&#xff0c;这样保存代码…...

LCTF液晶可调谐滤波器在多光谱相机捕捉无人机目标检测中的作用

中达瑞和自2005年成立以来&#xff0c;一直在光谱成像领域深度钻研和发展&#xff0c;始终致力于研发高性能、高可靠性的光谱成像相机&#xff0c;为科研院校提供更优的产品和服务。在《低空背景下无人机目标的光谱特征研究及目标检测应用》这篇论文中提到中达瑞和 LCTF 作为多…...

数据库正常,但后端收不到数据原因及解决

从代码和日志来看&#xff0c;后端SQL查询确实返回了数据&#xff0c;但最终user对象却为null。这表明查询结果没有正确映射到User对象上。 在前后端分离&#xff0c;并且ai辅助开发的时候&#xff0c;很容易出现前后端变量名不一致情况&#xff0c;还不报错&#xff0c;只是单…...

麒麟系统使用-进行.NET开发

文章目录 前言一、搭建dotnet环境1.获取相关资源2.配置dotnet 二、使用dotnet三、其他说明总结 前言 麒麟系统的内核是基于linux的&#xff0c;如果需要进行.NET开发&#xff0c;则需要安装特定的应用。由于NET Framework 是仅适用于 Windows 版本的 .NET&#xff0c;所以要进…...