
全国计算机二级C语言C语言教程课后习题答案.doc
33页校园网.新视野教育全国计算机等级考试二级C语言教程课后习题解析说明:1、原先的少部分题目有错,请用红色的部分替换掉;2、如果红色部分有文字“删除该行”,就直接删除该行;第一章 C语言的基础知识第一节 对C语言的初步认识习题1. 下列叙述中错误的是 BA)任何一个C程序都必须有且仅有一个main函数,C语言总是从main函数开始执行B)C语言中的变量,可以先使用后定义C)所有的C语言语句最后都必须有一个分号D)C程序书写格式自由,语句可以从任一列开始书写,一行内可以写多个语句第二节 熟悉Visual C++习题1. C语言源程序名的后缀是 BA).exe B).c C).obj D).cp2. 下列叙述中错误的是 DA)计算机不能直接执行用C语言编写的源程序B)C程序经C编译后,生成后缀为.obj的文件是一个二进制文件C)后缀为.obj 的文件,经连接程序生成后缀为.exe的文件是一个二进制文件D)后缀为.obj和.exe的二进制文件都可以直接运行3. 用C语言编写的代码程序 BA)可立即执行 B)是一个源程序C)经过编译即可执行 D)经过编译解释才能执行第三节 标识符习题1. 按照C语言规定的用户标识符命名规则,不能出现在标识符中的是 BA)大写字母 B)连接符 C)数字字符 D)下划线2. 以下选项中不合法的标识符是 CA)print B)FOR C)&a D)_003. 以下叙述中错误的是 AA)用户所定义的标识符允许使用关键字B)用户所定义的标识符应尽量做到“见名知意”C)用户所定义的标识符必须以字母或下划线开头D)用户定义的标识符中,大、小写字母代表不同标识4. 可在C程序中用作用户标识符的一组标识符是 AA)and B)Date C)Hi D)case_2007 y-m-d Dr.Tom Bigl5. 以下不合法的用户标识符是 CA)j2_KEY B)Double C)4d D)_8_ 6. 以下不能定义为用户标识符的是 DA)Main B)_0 C)_int D)sizeof7. 下列选项中,不能用作标识符的是 DA)_1234_ B)_1_2 C)int_2_ D)2_int_8. 以下4组用户定义标识符中,全部合法的一组是 AA)_main B)If C)txt D)intenclude -max REAL k_2sin turbo 3COM _001第四节 数制转换习题1.十进制整数360的八进制为__________,十六进制为_____________。
550 168第五节 整数和实数习题1.以下选项中正确的整型常量是 CA)10110B B)0386 C)0Xffa D)x2a22.以下关于long、int和short类型数据占用内存大小的叙述中正确的是 DA)均占4个字节 B)根据数据的大小来决定所占内存的字节数C)由用户自己定义 D)由C语言编译系统决定3.以下选项中不属于C语言的类型的是 DA)signed short int B)unsigned long intC)unsigned int D)long short4.以下选项中合法的实型常数是CA)5E2.0 B)E-3 C).2E0 D)1.3E5.以下选项中,不能作为合法常量的是 BA)1.234e04 B)1.234e0.4 C)1.234e+4 D)1.234e06.以下选项中可作为C语言合法常量的是 AA)-80. B)-080 C)-8e1.0 D)-80.0e7.以下符合C语言语法的实型常量是 CA)1.2E0.5 B)3.14.15 9E C).5E-3 D)E158.以下不合法的数值常量是 CA)011 B)lel C)8.0E0.5 D)0xabcd 9.以下选项中,合法的一组C语言数值常量是 无A)028 B)12. C).177 D)0x8A5e-3 OXa23 4c1.5 10,000-0xf 4.5e0 Oabc 3.e510.下列定义变量的语句错误的是 DA)int _int ; B)double int_; C)long For; D)float US$;第六节 算术表达式与赋值表达式习题1.表达式3.6-5/2+1.2+5%2的值是 DA)4.3 B)4.8 C)3.3 D)3.82.设有定义:float x=123.4567;,则执行以下语句后输出的结果是 _____。
123.460000printf("%f\n",(int)(x*100+0.5)/100.0);3.设有定义:float a=2,b=4,h=3;,以下C语言表达式与代数式 ×h 计算结果不相符的是 BA)(a+b)*h/2 B)(1/2)*(a+b)*h C)(a+b)*h*1/2 D)h/2*(a+b)第七节 自加自减运算符、逗号表达式习题1.设变量已正确定义为整型,则表达式n=i=2,++i,i++的值为______32.设有定义:int k=0;,以下选项的4个表达式中与其他3个表达式的值不相同的是 AA)k++ B)k+=1 C)++k D)k+13.有以下程序 Bmain(){ char a1='M', a2='m'; printf("%c\n", (a1, a2) ); }以下叙述中正确的是A)程序输出大写字母M B)程序输出小写字母mC)格式说明符不足,编译出错 D)程序运行时产生出错信息4.有以下程序:Bmain( ){ int a=0,b=0;a =10; /*给a赋值b=20; 给b赋值 */printf("a+b=%d\n",a+b); /*输出计算结果*/}程序运行后的结果是A)a+b=30 B)a+b=10 C)30 D)程序出错第八节 字 符习题1.以下选项中不属于字符常量的是( )。
BA)'C' B)"C" C)'0' D)'\072'2.已知字母A的ASCⅡ代码值为65,若变量kk为char型,以下不能正确判断出kk中的值为大写字母的表达式是( )BA)kk>='A'&&kk<='Z' B)!(kk>='A'‖kk<='Z') C)(kk+32)>='a'&&(kk+32)<='z' D)kk>=48 && kk<913.已知字符'A'的ASCⅡ代码值是65,字符变量c1的值是'A',c2的值是'D'执行语句printf("%d,%d",c1,c2-2);后,输出结果是( )CA)A,B B)A,68 C)65,66 D)65,684.以下不合法的字符型常量是 BA)'\x13' B)'\018' C)'\65' D)'\n'5.已知大写字母A的ASCII码是65,小写字母a的ASCII码是97,以下不能将变量c中大写字母转换为对应小写字母的语句是( )DA)c=c-'Z' + 'z' B)c=c+32C)c=c-'A' + 'a' D)c='A'+ c-'a'第九节 位运算习题1.变量a中的数据用二进制表示的形式是01011101,变量b中的数据用二进制表示的形式是11110000。
若要求将a的高4位取反,低4位不变,所要执行的运算是 AA)a^b B)a|b C) a&b D)a<<42.有以下程序 #include
