C语言选择题复习:基础表达式与运算符
版权申诉
25 浏览量
更新于2024-08-14
收藏 79KB PDF 举报
本资源是一份C语言程序设计的复习题集,包含11道选择题,旨在帮助学习者巩固和检验对C语言基础知识的理解。以下是部分题目及解析:
1. **问题1**:判断整型变量b的值为0,选项C`b=a%2`是正确的。这里通过取a的余数(a除以2的余数),若a是偶数(即能被2整除),则余数为0,因此b会得到0。
2. **问题2**:计算表达式`x+a%3*(int)(x+y)%2/4`,给定`x=2.5`和`y=4.7`,首先求`a%3`(2.5取模3),然后`(int)(x+y)`取整结果为7(向下取整),再计算`7%2`得1,1除以4得0.25,与x相加得2.75,但因为x本身是浮点数,最终结果为2.5,选A。
3. **问题3**:逻辑表达式`!(a+b)+c-1&&b+c/2`,先计算`!(a+b)`,`a=3`和`b=4`相加结果为7,取非为假(0),然后`c-1`为4,`b+c/2`为6,`&&`运算符优先级较低,整个表达式的值为0。
4. **问题4**:表达式`(a=2,b=5,b++,a+b)`中,先执行赋值操作`a=2`,然后`b++`自增1,此时`b=6`,最后计算`a+b`,结果为8,选B。
5. **问题5**:选项D`x!=y||x>=y`满足条件,因为`x=5`和`y=2`时,不等于`y`(`x!=y`为真),且`x`大于等于`y`(`x>=y`也为真),所以值为1。
6. **问题6**:表达式`a+=a-=a*=a`等价于`a=a*a-a`, 因为开始时`a=12`,所以计算结果为`12*12-12=120-12=108`,然后取模12得到0,最终结果为0,选C。
7. **问题7**:表达式`10+'b'+x*f`,其中`b`转换为整型后,和`10`相加为字符'b'对应的ASCII值11,`x`和`f`相乘为浮点型,两者相加后结果是`double`类型,选C。
8. **问题8**:将`float`类型的`x=1.2`转换为`int`类型,结果向下取整为1,加上整型`k=5`,总和为6,选D。
9. **问题9**:表达式`k=(12<10)?4:1?2:3`中,第一个条件`12<10`为假,因此跳过4和2,取1对应的值2,选B。
10. **问题10**:运算符优先级相同且从左到右运算的是括号`()`, 数组访问`[]`, 指针箭头`->`, 和成员访问`.`,选A。
11. **问题11**:`z=x>y?10:20`中,`x=1`小于`y=2`,因此`z`取10,选A。
这些题目覆盖了C语言中的算术运算、关系运算、逻辑运算、数据类型转换以及控制结构,适合用于复习和测试对C语言基础理论的掌握程度。
2021-09-30 上传
2021-10-30 上传
2021-10-20 上传
2021-10-30 上传
2021-09-30 上传
2021-09-30 上传
2021-10-11 上传
2021-10-11 上传
2021-12-04 上传
cjd13107639592
- 粉丝: 0
- 资源: 5万+
最新资源
- StarModAPI: StarMade 模组开发的Java API工具包
- PHP疫情上报管理系统开发与数据库实现详解
- 中秋节特献:明月祝福Flash动画素材
- Java GUI界面RPi-kee_Pilot:RPi-kee专用控制工具
- 电脑端APK信息提取工具APK Messenger功能介绍
- 探索矩阵连乘算法在C++中的应用
- Airflow教程:入门到工作流程创建
- MIP在Matlab中实现黑白图像处理的开源解决方案
- 图像切割感知分组框架:Matlab中的PG-framework实现
- 计算机科学中的经典算法与应用场景解析
- MiniZinc 编译器:高效解决离散优化问题
- MATLAB工具用于测量静态接触角的开源代码解析
- Python网络服务器项目合作指南
- 使用Matlab实现基础水族馆鱼类跟踪的代码解析
- vagga:基于Rust的用户空间容器化开发工具
- PPAP: 多语言支持的PHP邮政地址解析器项目