第6练 2.6-2.7 逗号运算符、位运算、强制类型转换、常用数学函数 《C语言》 (第五版) 一课一练 (山东省)

2026-06-24
| 2份
| 7页
| 49人阅读
| 0人下载

内容正文:

【编写说明】依托三阶支架资源编写方案,《一课一练》明确基础层具象化支架定位,作为课堂同步配套资源,其内容与课堂教学深度绑定,并且精准匹配中职学生知识基础与学习特质,遵循“由浅入深、循序渐进”的认知规律,聚焦基础性与实效性核心,通过拆解知识点、简化认知难度,切实降低学习门槛,为后续知识巩固与能力提升筑牢根基,是优质课后作业首选。 本卷是《C语言》(第五版)《一课一练》第6练,内容是2.6-2.7 逗号运算符、位运算、强制类型转换、常用数学函数。 《C语言》(第五版)一课一练 第6练 2.6-2.7 逗号运算符、位运算、强制类型转换、常用数学函数 一、单选题 1. 逗号表达式 (3, 5, 7) 的值是( ) A. 3(第一个表达式的值) B. 5(中间表达式的值) C. 15(三个数相加的结果) D. 7(最后一个表达式的值) 2. 以下哪个头文件包含sqrt、pow等数学函数的声明( ) A. stdio.h(标准输入输出头文件) B. math.h(数学函数头文件) C. string.h(字符串处理头文件) D. stdlib.h(标准库头文件) 3. 设有 int a=5, b=3; 表达式 a&b 的值是( ) A. 1(按位与101&011=001) B. 7(5|3位运算的结果) C. 6(5^3位运算的结果) D. 3(减法5-3的结果) 4. C语言中强制类型转换的正确语法格式是( ) A. 类型名(表达式) B. 类型名{表达式} C. (类型名)表达式 D. [类型名]表达式 5. 设有 int x=8; 表达式 x>>2 的值是( ) A. 4(右移1位的结果) B. 16(左移1位的结果) C. 2(8右移2位即8/4的结果) D. 32(左移2位的结果) 6. 设有 double x=3.7; 表达式 (int)x 的值是( ) A. 3.7(原值不变) B. 3(截断小数部分) C. 4(四舍五入的结果) D. 3.0(浮点数形式的3) 7. 函数 fabs(-5.3) 的返回值是( ) A. 5.3(取绝对值的结果) B. -5.3(原值不变) C. 5(截断小数后的结果) D. -6(某种取整的结果) 8. 设有 int a=6, b=4; 表达式 a|b 的值是( ) A. 2(6^4位运算的结果) B. 4(按位与6&4的结果) C. 10(某种加法的结果) D. 6(110|100位运算的结果) 9. 设有 int x=3; 表达式 x<<3 的值是( ) A. 24(3左移3位即3*8的结果) B. 9(3+3+3的结果) C. 12(3左移2位的结果) D. 6(3左移1位的结果) 10. 表达式 (int)(3.9+0.5) 的值是( ) A. 3(截断3.9的结果) B. 3.9(未转换的浮点值) C. 4(3.9+0.5=4.4截断后的结果) D. 4.5(加法后的浮点结果) 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $ 【编写说明】依托三阶支架资源编写方案,《一课一练》明确基础层具象化支架定位,作为课堂同步配套资源,其内容与课堂教学深度绑定,并且精准匹配中职学生知识基础与学习特质,遵循“由浅入深、循序渐进”的认知规律,聚焦基础性与实效性核心,通过拆解知识点、简化认知难度,切实降低学习门槛,为后续知识巩固与能力提升筑牢根基,是优质课后作业首选。 本卷是《C语言》(第五版)《一课一练》第6练,内容是2.6-2.7 逗号运算符、位运算、强制类型转换、常用数学函数。 《C语言》(第五版)一课一练 第6练 2.6-2.7 逗号运算符、位运算、强制类型转换、常用数学函数 一、单选题 1. 逗号表达式 (3, 5, 7) 的值是( ) A. 3(第一个表达式的值) B. 5(中间表达式的值) C. 15(三个数相加的结果) D. 7(最后一个表达式的值) 【答案】D 【解析】逗号表达式的值是最后一个表达式的值,(3,5,7)的值为7。逗号表达式按从左到右的顺序依次计算每个子表达式,整个表达式的值取最右边那个。A错在取了第一个值;B错在取了中间值;C错在逗号表达式不是求和运算。 2. 以下哪个头文件包含sqrt、pow等数学函数的声明( ) A. stdio.h(标准输入输出头文件) B. math.h(数学函数头文件) C. string.h(字符串处理头文件) D. stdlib.h(标准库头文件) 【答案】B 【解析】math.h是C语言数学函数库的头文件,包含sqrt(平方根)、pow(幂运算)、fabs(绝对值)等函数的声明。A中stdio.h包含输入输出函数;C中string.h包含字符串处理函数;D中stdlib.h包含通用工具函数。 3. 设有 int a=5, b=3; 表达式 a&b 的值是( ) A. 1(按位与101&011=001) B. 7(5|3位运算的结果) C. 6(5^3位运算的结果) D. 3(减法5-3的结果) 【答案】A 【解析】5的二进制为101,3的二进制为011。按位与运算:101&011=001,即十进制1。B中7是5|3的结果(101|011=111=7);C中6是5^3的结果(101^011=110=6);D中3与位运算无关。 4. C语言中强制类型转换的正确语法格式是( ) A. 类型名(表达式) B. 类型名{表达式} C. (类型名)表达式 D. [类型名]表达式 【答案】C 【解析】C语言中强制类型转换的语法为(类型名)表达式,例如(int)3.7将3.7转换为整型3。A是C++的函数式转换语法,C语言不支持;B中花括号语法是C++11的统一初始化语法,不属于C语言;D中用方括号表示类型转换不属于C语言语法。 5. 设有 int x=8; 表达式 x>>2 的值是( ) A. 4(右移1位的结果) B. 16(左移1位的结果) C. 2(8右移2位即8/4的结果) D. 32(左移2位的结果) 【答案】C 【解析】右移运算x>>2将x的二进制位向右移动2位,相当于x除以2的2次方,即8/4=2。A中4是右移1位的结果(8>>1=4);B中16是左移1位的结果(8<<1=16);D中32是左移2位的结果(8<<2=32)。 6. 设有 double x=3.7; 表达式 (int)x 的值是( ) A. 3.7(原值不变) B. 3(截断小数部分) C. 4(四舍五入的结果) D. 3.0(浮点数形式的3) 【答案】B 【解析】(int)x将double类型的3.7强制转换为int类型,截断小数部分,结果为整数3。A错,强制转换后类型已变为int,值不再是3.7;C错,强制转换是截断而非四舍五入;D错,(int)x的结果类型为int,值为3而非3.0。 7. 函数 fabs(-5.3) 的返回值是( ) A. 5.3(取绝对值的结果) B. -5.3(原值不变) C. 5(截断小数后的结果) D. -6(某种取整的结果) 【答案】A 【解析】fabs函数的功能是求浮点数的绝对值,fabs(-5.3)返回5.3。B错,fabs会去掉负号;C错,fabs不截断小数部分,返回值仍为浮点数;D错,fabs不进行取整运算,也不是负数结果。 8. 设有 int a=6, b=4; 表达式 a|b 的值是( ) A. 2(6^4位运算的结果) B. 4(按位与6&4的结果) C. 10(某种加法的结果) D. 6(110|100位运算的结果) 【答案】D 【解析】6的二进制为110,4的二进制为100。|运算:对应位有一个为1结果即为1,110|100=110,即十进制6。A中2是6^4的结果(110^100=010=2);B中4是6&4按位与的结果(110&100=100=4);C中10与位运算无关。 9. 设有 int x=3; 表达式 x<<3 的值是( ) A. 24(3左移3位即3*8的结果) B. 9(3+3+3的结果) C. 12(3左移2位的结果) D. 6(3左移1位的结果) 【答案】A 【解析】左移运算x<<3将x的二进制位向左移动3位,相当于x乘以2的3次方,即3*8=24。3的二进制为11,左移3位后为11000,即24。B中9是3*3的结果,与左移无关;C中12是3<<2的结果;D中6是3<<1的结果。 10. 表达式 (int)(3.9+0.5) 的值是( ) A. 3(截断3.9的结果) B. 3.9(未转换的浮点值) C. 4(3.9+0.5=4.4截断后的结果) D. 4.5(加法后的浮点结果) 【答案】C 【解析】先计算括号内的3.9+0.5=4.4,然后(int)4.4截断小数部分得到4。注意强制转换是截断而非四舍五入。(int)作用于整个表达式4.4而非单独作用于3.9。A错在先截断3.9再运算;B和D错在结果类型应为int而非浮点数。 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $

资源预览图

第6练 2.6-2.7 逗号运算符、位运算、强制类型转换、常用数学函数 《C语言》 (第五版) 一课一练 (山东省)
1
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。