欢迎来到天天文库
浏览记录
ID:30147002
大小:69.04 KB
页数:4页
时间:2018-12-27
《[工学]c语言阅读程序题参考答案》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、【阅读程序题参考答案】【2.1】参考答案:D注释:程序中除法运算的两个操作数均是整型,运算结果也是整型。【2.2】参考答案:B注释:C语言允许在程序块(分程序)中说明变量。【2.3】参考答案:C注释:变量i中的负号传送给变量n后,因n是无符号数,已不作为负号处理。【2.4】参考答案:D注释:对变量x的――操作是后缀形式,变量x的减1操作要在执行完printf函数之后才进行,所以变量x的值在输出的时候仍然保持原值10。【2.5】参考答案:B注释:C语言在执行printf()时,对函数中的表达式表列的处理顺序是从后向前,即先处理n
2、--,再处理n++,最后处理n,而且每一个表达式作为一个处理单元,也就是说在不同的表达式中自增自减运算是单独考虑的。【2.6】参考答案:A注释:变量x和变量y做按位与,结果为0x0200,右移4位为0x0020,再与0x005f做按位或,最后结果为0x007f。【2.7】参考答案:A注释:逗号表达式的结果是用逗号分开的最后一个表达式的值,此题由于c=='A'的值是0,所以逗号表达式的值为0。【2.8】参考答案:B【2.9】参考答案:A【2.10】参考答案:C注释:在输出格式描述"%m.ns"中,m是输出总长度,n是实际字符的个
3、数,这里m没有给出,则输出总长度就是实际输出字符的个数。【2.11】参考答案:C【2.12】参考答案:B【2.13】参考答案:C【2.14】参考答案:B【2.15】参考答案:D【2.16】参考答案:A【2.17】参考答案:C【2.18】参考答案:A【2.19】参考答案:C注释:在switch语句中,case本身仅起到语句标号的作用,不会改变语句的流程,执行break语句才能退出当前的switch语句。【2.20】参考答案:D注释:siwtch语句的表达式中,变量c是后缀的增一运算,第一次执行do-while循环时,执行case
4、'A'后面的语句。【2.21】参考答案:D【2.22】参考答案:B【2.23】参考答案:B注释:fabs()是浮点数绝对值函数。【2.24】参考答案:A【2.25】参考答案:C注释:C语言允许在程序块(分程序)内说明变量,如果在程序块内说明的变量和程序块外的变量同名,在块外说明的变量在块内是不可见的。可将此题和【2.11】进行比较,加深理解。【2.26】参考答案:C【2.27】参考答案:B【2.28】参考答案:①D②A【2.29】参考答案:D【2.30】参考答案:B注释:输出结果为字符串长度。【2.31】参考答案:D注释:字符
5、串拷贝函数strcpy()要求的两个参数都是字符串首地址。本题中第二个参数是字符串常量,接受这个字符串的第一个参量不是直接给出字符数组名,而是进行了地址运算后的结果。由于str字符串的长度是13,除2取整后是6,第一个参数给出的地址是字符数组str的首地址加6,也就是原来字符串中第二个空格的位置,把"esshe"从该处放入,字符串str变为"Howdoesshe"。【2.32】参考答案:C注释:main函数调用func函数时,第一个实参使用的是逗号表达式的值,也就是x+y的结果。由于对变量x、y、z进行的是后缀运算,所以函数f
6、unc的参数值是13和8。【2.33】参考答案:C【2.34】参考答案:①C②A③C【2.35】参考答案:C【2.36】参考答案:B注释:函数fun进行了递归调用,实际进行的运算是5×4×3×2×1×3×10。主函数内说明的局部变量w屏蔽了外部变量w,所以在主函数中外部变量w是不可见的,在调用printf函数时表达式"fun(5)*w"中w的值是10。【2.37】参考答案:D注释:main函数三次调用了函数funa,在funa函数中的静态变量c仅在第一次调用时进行了初始化,再次调用时不再对静态变量赋初值。【2.38】参考答案:
7、B注释:main函数和num函数中都说明了变量a和b,由于它们是内部变量,所以它们分别在说明它们的函数内有效。外部变量x和y在函数num之后被说明,而在num函数中又要引用它们,所以在num函数中用关键字"extern"说明变量x和y是一个外部变量,也就是通知计算机这两个变量在fun函数以外被说明,此处不是定义两个int型变量。【2.39】参考答案:D注释:函数f中的变量c是静态变量,仅在第一次调用函数f时它被初始化为3,第二次调用函数f时c的值是4,第三次调用函数f时c的值是5。【2.40】参考答案:D【2.41】参考答案:
8、D注释:程序中有三个"x"分别在三个不同的函数中,这三个"x"都是自动变量,所以三个"x"分别局部于三不同的函数,在三个函数中对"x"的操作互不影响。【2.42】参考答案:A【2.43】参考答案:A注释:*(++p)和*++p都是指针变量值前加1,第一次指向a[1],第二次指
此文档下载收益归作者所有