C语言--每日选择题--Day28

第一题

1. 设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是(  )

A:6.500000

B:6

C:5.500000

D:6.000000

答案及解析 D

本题考查的是不同数据类型之间的变量进行运算时发生的类型转换;

不涉及强制类型转换的规则:

1. char --> int --> float --> double;

2. 有符号会转换为无符号

强制类型转换只针对一个变量,括号后面是谁就针对谁;

本题为(int)a + b / b;

首先a被强制类型转换为int类型,会直接保留整数部分,a = 5;

b / b = 1.000000 因为b为double类型;

所以(int)a + b / b = 5 + 1.000000 ;

int 隐式类型转换为double

(int)a + b / b = 6.000000

第二题(易错题)

2. s1和s2已正确定义并分别指向两个字符串。若要求:当s1所指串大于s2所指串时,执行语句S。则以下选项中正确的是()

A:if(s1>s2) S;

B:if(strcmp(s1,s2)) S;

C:if(strcmp(s2,s1)>0) S;

D:if(strcmp(s1,s2)>0) S;

答案及解析 D

这里考的一方面是对strcmp函数的认识,另一方面考的就是在if语句中的真假;

strcmp函数,比较两个字符串的大小,通过两个字符串的第一个字符的ASCII值比较,若相等就继续往下比,左操作数的大,就是左字符串大,反之亦然;

if中的真假:0为假,非0为真

所以本题的B选项是最容易错的选项,如果s1 < s2 ,返回值为负数,但是在if语句中负数也为真值,所以会执行S,B选项错误;

第三题(易错题)

3. i = 1,j = 0 是正确的吗?

char c = 48;
int i = 1, j = 10;
j = !(c > j)&&i++;

A:正确

B:错误

答案及解析 A

本题中一是要看优先级,二是考查结合性

相关博客:

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

首先,优先级:括号 > ++ > ! >&&

所以先算括号里的是必然的,j = !1 && i++;

那之后就是要根据优先级去算i++了吗?

当然不是,因为这时候我们的 !1和i++是&&的两个操作数;

先要遵守结合性;&&的结合性也就是运算顺序:从左到右

所以会先算!1 = 0;

j = 0 && i++;

而左边算完之后为0,又因为&&是有0就是0,岁月右边的i++不会计算;

最后i = 1, j = 0;

第四题

4. 若a是float型变量,b是unsigned型变量,以下输入语句中合法的是( )

A:scanf("%6.2f%d", &a, &b);

B:scanf("%f%n", &a, &b);

C:scanf("%f%3o", &a, &b);

D:scanf("%f%f", &a, &b);

答案及解析 C

单独的unsigned是unsigned int的缩写,表示无符号整数;

A:%6.2f,在scanf中,不需要精度,所以错误;

B:%n是用来统计字符个数的,不参加输入输出语句;

C:正确,八进制也是一个整数;

D:格式不匹配;

第五题

5. 下面程序执行后的输出值为()

#define  SUM(x) 3*x*x+1
int main() 
{int i=5, j=8;printf("%d\n", SUM(i+j));return 0;
}

A:64

B:508

C:420

D:其他几项都不对

答案及解析 A

记住一点,define就是替换,不要自己添加符号;

所以SUM(i+j) 被替换为 3 * i + j * i + j + 1 = 3 * 5 + 8 * 5 + 8 + 1 = 64

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/178967.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

常见面试题-Redis 切片集群以及主节点选举机制

Redis 切片集群了解吗&#xff1f; 答&#xff1a; Redis 切片集群是目前使用比较多的方案&#xff0c;Redis 切面集群支持多个主从集群进行横向扩容&#xff0c;架构如下&#xff1a; 使用切片集群有什么好处&#xff1f; 提升 Redis 读写性能&#xff0c;之前的主从模式中&…

使用C语言库函数qsort排序注意点

目录 题目背景错误C语言代码&#xff1a;正确C语言代码&#xff1a;注意点 题目背景 高校团委组织校园歌手比赛&#xff0c;进入决赛的校园歌手有10位,歌手编号从1到10进行编号。组委会随机抽取方式产生了决赛次序为&#xff1a;3,1,9,10,2,7,5,8,4,6。比赛现场有5个评委为参赛…

【Docker项目实战】使用Docker部署Plik临时文件上传系统

【Docker实战项目】使用Docker部署Plik 临时文件上传系统 一、Plik介绍1.1 Plik简介1.2 Plik特点 二、本地环境介绍2.1 本地环境规划2.2 本次实践介绍 三、本地环境检查3.1 检查Docker服务状态3.2 检查Docker版本3.3 检查docker compose 版本 四、下载Plik镜像五、部署Plik临时…

PLC:200smart

PLC&#xff1a;200smart 第十章、数据类型、数据存储1、数据类型1.1、有符号数1.2、有符号数 2、传送指令 第十一章、比较指令、整数、浮点数的运算1、比较指令1、运算指令1.1、浮点数运算1.2、整数运算 第十章、数据类型、数据存储 1、数据类型 数据类型分为两大类 无符号数…

Java中的mysql——面试题+答案——第24期

当涉及MySQL时&#xff0c;面试题可以涵盖更多高级主题、安全性和实践经验。 MySQL中的存储引擎InnoDB和MyISAM的区别是什么&#xff1f; 答案&#xff1a; InnoDB支持事务&#xff0c;而MyISAM不支持。InnoDB使用行级锁&#xff0c;而MyISAM使用表级锁。InnoDB支持外键&#x…

【小布_ORACLE】Part11-1--RMAN Backups笔记

Oracle的数据备份于恢复RMAN Backups 学习第11章需要掌握&#xff1a; 一.RMAN的备份类型 二.使用backup命令创建备份集 三.创建备份文件 四.备份归档日志文件 五.使用RMAN的copy命令创建镜像拷贝 文章目录 Oracle的数据备份于恢复RMAN Backups1.RMAN Backup Concepts&#x…

用了这7款html网页制作软件,你会爱上编程!

制作网页是一个复杂的过程&#xff0c;需要注意到各种细节&#xff0c;只有依靠出色的技术能力和强大的工具&#xff0c;我们才能真正达到我们的目标。幸运的是&#xff0c;有很多优秀的HTML网页设计软件可以让整个流程变得更加轻松和高效。以下就是我们经过深思熟虑和严格筛选…

Redis 的过期策略都有哪些?

思考:假如redis的key过期之后&#xff0c;会立即删除吗&#xff1f; Redis对数据设置数据的有效时间&#xff0c;数据过期以后&#xff0c;就需要将数据从内存中删除掉。可以按照不同的规则进行删除&#xff0c;这种删除规则就被称之为数据的删除策略&#xff08;数据过期策略…

i已学赋能智慧教育时代的幼儿教育

伴随“教育数字化战略行动”的深入开展,智慧教育正式成为国家战略。智慧教育延伸至家校社教育的每个阶段。当前,为适应智慧教育发展趋势,我国制定了《中国教育现代化2035》《教育部关于加强“三个课堂”应用的指导意见》《教育信息化2.0行动计划》等文件。幼儿作为智慧教育、智…

Vue.js 的生命周期

Vue.js 的生命周期钩子函数是一组在 Vue 实例生命周期中执行的函数&#xff0c;它们允许你在特定阶段执行自定义逻辑。以下是 Vue.js 的生命周期钩子函数以及它们在生命周期中的执行时机&#xff1a; 1、beforeCreate: 在实例初始化之后&#xff0c;数据观测 (data observer)…

什么是高级语言、机器语言、汇编语言?什么是编译和解释?

1、高级语言 计算机程序是一种让计算机执行特定任务的方法。程序是由程序员用一种称为编程语言的特殊语言编写的。编程语言有很多种&#xff0c;例如 C、C、Java、Python 等。这些语言被称为高级语言&#xff0c;因为它们更接近人类的自然语言&#xff0c;而不是计算机能够直接…

js 判断变量的类型 typeof Object.prototype.toString.call(a) instanceof

方法1 语法&#xff1a;typeof 变量xxx&#xff0c;返回值是&#xff0c;变量xxx的数据类型的字符串表达 typeof undefined 返回 "undefined"typeof 5 返回 "number"typeof hello 返回 "string"typeof true …

Linux操作系统上安装MYSQL 5.7 记录

本文描述了mysql server的下载安装初始化工作。 下载 https://dev.mysql.com/downloads/mysql/ 安装&#xff1a; 环境: CentOS 7.6 ,版本&#xff1a;MYSQL 5.7 tar -xvf mysql-5.7.41-1.el7.x86_64.rpm-bundle.tar yum -y install mysql-community-*.rpm启动 systemc…

品优购:nav导航、footer部分

目录 nav导航栏 footer部分 mod-copyright nav导航栏 nav盒子通栏有高度&#xff0c;有下边框 1号盒子左浮动&#xff0c;dropdown 2号盒子左侧浮动&#xff0c;navitems导航栏组 先看dropdown里&#xff0c;先表头&#xff0c;这里意思是description term, 然后是一系列表…

python基础练习题库实验5

文章目录 题目1代码实验结果题目2代码实验结果题目3代码实验结果![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/6058fb4b66994aed838f920f7fe75706.png)题目4代码实验结果题目总结题目1 编写一个程序,使用while循环语句和字符串格式显示以下精确输出。 例如: …

Linux命令进阶——grep管道命令在查看日志的场景中的使用 具体案例

前言 本篇博客介绍在查看日志的场景中&#xff0c;grep管道命令的使用&#xff0c;并给出了具体的案例。 以下为Linux相关的博客文章列表&#xff1a; Linux——认识Linux的目录结构 & 常用命令 & vim命令 & 权限及其控制 & 防火墙命令 & 自定义命令 &a…

2023年【广东省安全员B证第四批(项目负责人)】证考试及广东省安全员B证第四批(项目负责人)复审模拟考试

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2023年广东省安全员B证第四批&#xff08;项目负责人&#xff09;证考试为正在备考广东省安全员B证第四批&#xff08;项目负责人&#xff09;操作证的学员准备的理论考试专题&#xff0c;每个月更新的广东省安全员B证…

SpringBoot——模板引擎及原理

优质博文&#xff1a;IT-BLOG-CN 一、模板引擎的思想 模板是为了将显示与数据分离&#xff0c;模板技术多种多样&#xff0c;但其本质都是将模板文件和数据通过模板引擎生成最终的HTML代码。 二、SpringBoot模板引擎 SpringBoot推荐的模板引擎是Thymeleaf语法简单&#xff0…

如何进行无代码开发?有哪些无代码开发工具和无代码软件开发平台?

无代码开发是指不写代码&#xff0c;通过可视化工具进行应用程序开发。无代码开发让非技术用户通过拖拽和选择等简单操作&#xff0c;就能快速创建应用程序。 如何学习无代码开发 随着科技的不断发展&#xff0c;新的技术和工具不断涌现&#xff0c;无代码开发就是其中一种。掌…

YOLOv5算法进阶改进(5)— 主干网络中引入SCConv | 即插即用的空间和通道维度重构卷积

前言:Hello大家好,我是小哥谈。SCConv是一种用于减少特征冗余的卷积神经网络模块。相对于其他流行的SOTA方法,SCConv可以以更低的计算成本获得更高的准确率。它通过在空间和通道维度上进行重构,从而减少了特征图中的冗余信息。这种模块的设计可以提高卷积神经网络的性能。�…