当前位置:文档之家› C语言基础知识课后习题答案

C语言基础知识课后习题答案

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).cp 2. 下列叙述中错误的是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)HiD)case_2007 y-m-d Dr.T omBigl5. 以下不合法的用户标识符是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)0xabcd9.以下选项中,合法的一组C语言数值常量是BA)028 B)12. C).177 D)0x8A5e-3 OXa23 4c1.510,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.46printf("%f\n",(int)(x*100+0.5)/100.0);3.设有定义:float a=2,b=4,h=3;,以下C语言表达式与代数式×h 计算结果不相符的是B A)(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中的值为大写字母的表达式是()。

B A)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.以(25)以下合法的字符型常量是A)'\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.有以下程序#includemain(){int a=1,b=2,c=3,x;x=(a^b)&c; printf("%d\n",x);}程序的运行结果是DA)0 B)1 C)2 D)33.有以下程序main(){unsigned char a=2,b=4,c=5,d;d=a|b; d&=c; printf("%d\n",d);}程序运行后的输出结果是BA)3 B)4 C)5 D)64.若变量已正确定义,则以下语句的输出结果是()。

B s=32; s^=32; printf("%d",s);A)-1 B)0 C)1 D)325.设有以下语句int a=1,b=2,c;c=a^(b<<2);执行后,c的值为DA)6 B)7 C)8 D)9第二章数据输出与输入第一节第二节数据输出2节合在一起只有1个课件习题1.有以下程序段char ch;int k;ch='a';k=12;printf("%c,%d,",ch,ch,k);printf("k=%d\n",k);已知字符a的ASCII十进制代码为97,则执行上述程序段后输出结果是DA)因变量类型与格式描述符的类型不匹配输出无定值B)输出项与格式描述符个数不符,输出为零值或不定值C)a,97,12k=12D)a,97,k=122.若变量已正确定义,有以下程序段删除该题int a=3,b=5,c=7;if(a>b) a=b; c=a;if(c!=a) c=b;printf("%d,%d,%d\n",a,b,c);其输出结果是BA)程序段有语法错B)3,5,3 C)3,5,5 D)3,5,7 3.有以下程序,其中%u表示按无符号整数输出main(){unsigned short x=0xFFFF;/* x的初值为十六进制数*/printf("%u\n",x);}程序运行后的输出结果是BA)-1 B)65535 C)32767 D)0XFFFF 4.以下叙述中不正确的是AA)调用printf函数时,必须要有输出项B)使用putchar函数时,必须在之前包含头文件stdio.hC)在C语言中,整数可以以十进制、八进制或十六进制的形式输出D)使用putchar函数可以不要输出项5.设有以下程序main(){int c=35; printf("%d", c&c);}程序运行后的输出结果是CA)0 B)70 C)35 D)536.以下程序运行后的输出结果是______________。

88main(){int x=0210; printf("%X\n",x);}第三节数据输入习题1.以下程序运行时若从键盘输入:10 20 30<回车>。

相关主题