c语言第3章练习题答案
更新时间:2023-10-31 06:00:01 阅读量: 综合文库 文档下载
- c语言第7章推荐度:
- 相关推荐
第3章练习题
(一)标识符
1.下列可用于C语言用户标识符的一组是( )。C
A) void, define, WORD B) a33,123,Car C) For, -abc, IFCase D) 2a, DO, sizeof
2.按照C语言规定的用户标识符命名规则,不能出现在标识符中的是( )。B
A) 大写字母 B) 连接符 C) 数字字符 D) 下划线 3.下面各选项中,均是C语言合法标识符的选项组是( )。B
A) 33 we auto B) _23 me _3ew C) _43 3e else D) ER -DF 32 4.以下叙述中错误的是( )。A
A) 用户所定义的标识符允许使用关键字
B) 用户所定义的标识符应尽量做到\见名识意\
C) 用户所定义的标识符中,大、小写字母代表不同标识 D) 用户所定义的标识符必须以字母或下划线开头
5.下面四个选项中,均是不合法的用户标识符的选项是( )。C
A) c_b goto int B) A P0 do C) float la0A D) 123 temp goto 6.下列是用户自定义标识符的是( )。A
A) w1 B) 3xy C) int D) LINE-3 7.以下选项中合法的标识符是( )。B
A) 1_2 B) _12 C) 2-1 D) 12_ 8.以下可用作C语言用户标识符的是( )。C
A) void,define,WORD B) a3b3,123,IF C) FOR,_abc,Case D) 2a,Do,Sizeof 9.正确的标识符是( )。A
A) y2 B) x=8 C) z.2 D) !at 10.以下能作为C语言变量名的是( )。D
A) float B) char C) do D) Double 11.请选出可用做C语言用户标识符的一组标识符( )。B
A) int B) a3b3 C) For D) 2a
define _123 3a DO WORD IF switch sizeof
12.下列定义变量的语句中错误的是( )。B
A) int i; B) double int; C) char a; D) float cup;
(二)数据类型
1.以下符合C语言语法的实型常量是( )。A
A) 8E-2 B) 3.14.159E C) E14 D) 2.2E0.5 2.以下选项中不属于字符常量的是( )。A
A) \ B) 'E' C) '\\xCC' D) '\\072' 3.以下不合法的字符常量是( )。B
A) '\\\ B) '\\018' C) '\\xcc' D) '\\\\' 4.以下合法的十六进制数是 ( )。B
A) 0x B) 0x4de C) 0x1h D) oX77 5.若有说明语句:char c='\\72';则变量c( )。A
A) 包含1个字符 B) 包含2个字符 C) 包含3个字符 D) 说明不合法,c的值不确定 6.以下选项中值为1的表达式是( )。B
A) 1-'0' B) 1-'\\0' C) '1'-0 D) '\\0'-'0' 7.以下选项中,不能作为合法常量的是( )。C
A) 1.234e05 B) 1.234e+5 C) 1.234e0.5 D) 1.234e0 8.以下选项中不属于C语言的类型的是( )。B
A) unsigned long int B) long short C) unsigned int D) signed short int
9.有以下定义语句,编译时会出现编译错误的是( )。C
A) char a='a'; B) char a='\\n'; C) char a='aa'; D) char a='\\x2d'; 10.C语言中,合法的字符串常量是( )。A
A) \ B) '\\t' C) 100 D) MUST 11.在C语言中,合法的长整型常数是( )。C
A) 0.123456 B) 4962 C) 9L D) 5.321e2 12.以下选项中可以作为C语言中合法整数的是( )。D
A) 01988 B) 110110B C) afbc D) 0Xbbc 13.设有语句char A='\\65';,则变量a( )。B
A) 包含4个字符 B) 包含1个字符 C) 包含3个字符 D) a为不合法的定义形式 14.以下变量说明中,正确的是( )。B
A) char: x y z; B) int a,b; C) int a;b; D) char x;y;z; 15.以下数据中属于字符串常量的是( )。C
A) ASK B) 'ask' C) \ D) 'm' 16.以下符号中,不属于转义字符的是( )。A
A) '\\' B) '\\x12' C) '\\011' D) '\\07' 17.以下正确的字符串常量是( )。D
A) \ B) 'opqrst ' C) thank you D) \
18.设有语句char a= '\\010';,则变量a( )。A A) 包含1个字符 B) 包含2个字符 C) 包含3个字符 D) 该语句不正确 19.以下选项中不能作为合法常量的是( )。B
A) 3.14e05 B) 3.14e0.5 C) 3.14e+5 D) 3.14e0
20.设变量a是int型,f是float型,i是double型,则表达式10+'a'+i*f值的数据类型为( A) int B) float C) double D) 不确定 21.现有定义int a;double b;float c;char k;,则表达式a/b+c-k值的类型为( )。B
A) int B) double C) float D) char
(三)运算符、表达式和变量赋初值
1.若函数中有定义语句:int a;,则( )。C
A) 系统将自动给a赋初值为0 B) 系统将自动给a赋初值-1 C) 这时a中的值无意义 D) 这时a中无任何值 2.以下不能正确表示代数式4cd/ab的C语言表达式是( )。D
A) 4*c*d/a/b B) c*d/a/b*4 C) c/a/b*d*4 D) 4*c*d/a*b 3.下列关于单目运算符++,--的叙述中正确的是( )。D
)。C
A) 它们的运算对象可以是任何变量和常量
B) 它们的运算对象可以是char型变量和int型变量,但不能是float型变量 C) 它们的运算对象可以是int型变量,但不能是double型变量和float型变量 D) 它们的运算对象可以是char型变量、int型变量和float型变量 *4.以下定义语句中正确的是( )。B
A) int a=b=0; B) char A=65+1,b=?b?; C) float a=1,*b=&a,*c=&b; D) double a=0.0;b=1.1;
5.设有定义:float x=123.4567;则执行以下语句后的输出结果是( )。A
Printf(“%f\\n”,(int)(x*100+0.5)/100.0);
A) 123.460000 B) 123.456700 C) 123.450000 D) 123 6.设有定义:int m=0;。以下选项的四个表达式中与其他三个表达式的值不相同的是( )。C
A) ++m B) m+=1 C) m++ D) m+1 7.以下选项中正确的定义语句是( )。C
A) double a;b; B) double a=b=7; C) double a=7,b=7; D) double,a,b;
8.已知大写字母A的ASCII码的值是65,小写字母a的ASCII码的值是97,以下不能将变量c中的大写字母转换为对应小写字母的语句是( )。D
A) c=(c-?A?)&+?a? B) c=c+32 C) c=c-?A?+?a? D) c=(?A?+c)&-?a? 9.若变量已正确定义并赋值,以下符合C语言语法的表达式是( )。B
A) a:=b+1 B) a=b=c+2 C) int 18.5%3 D) a=a+7=c+b 10.已知各变量的类型说明如下: int k,a,b; unsigned long w=5; double x=1.42;
则以下不符合C语言语法的表达式是( )。A
A) x%(-3) B) w+=-2 C) k=(a=2,b=3,a+b) D) a+=a-=(b=4)*(a=3)
11.设变量x为float型且已赋值,则以下语句能将x中的数值保留到小数点后两位,并将第3位四舍五入的是( )。B
A) x=(x*100+0.5)/100.0 B) x=(int)(x*100+0.5)/100.0 C) x=x*100+0.5/100.0 D) x=(x/100+0.5)*100.0 12.设有定义:int k=1,m=2;float f=7;,则以下选项中错误的表达式是( )。C
A) k=k>=k B) -k++ C) k%int(f) D) k>=f>=m
13.以下不能正确计算代数式1/3×sin1/2×sin1/2值的C语言表达式是( )。A
A) 1/3*sin(1/2)*sin(1/2) B) sin(0.5)*sin(0.5)/3 C) pow(sin(0.5),2)/3 D) 1/3.0*pow(sin(1.0/2), 2) 14.下面程序的运行结果是( )。C
main()
{ int y=5, x=14; y=((x=3*y,x+6),x-1); printf(“x=%d,y=%d”,x,y); }
A) x=27,y=27 B) x=12,y=13 C) x=15,y=14 D) x=y=27 15.设有定义:int x=3;,以下表达式中,值不为12的是( )。D
A) x*=x+1 B) x++,3*x C) x*=(1+x) D) 2*x,x+=6 16.请选出合法的C语言赋值语句( )。B
A) a=10 B) a++; C) a=5,b=10; D) k=float(a+b);
17.下列程序的输出结果是( )。C
main()
{ double d=3.2; int x,y; x=1.2; y=(x+3.8)/5.0; printf(“%d\\n”,d*y); }
A) 3 B) 3.2 C) 0 D) 3.07 18.执行语句x=(a=10,b=a--)后,x、a、b的值依次为( )。D
A) 10,10,9 B) 10,9,9 C) 9,10,9 D) 10,9,10 19.在以下选项中,不正确的赋值语句是( )。C
A) i++; B) n1=(n2=(n3=0)); C) m+n=1; D) i=k==j; 20.以下程序的输出结果是( )。A
main()
{ int a=052;
printf(“%d\\n”,--a); }
A) 41 B) 42 C) 51 D) 52 21.以下非法的赋值语句是( )。D
A) n=(i=9,++i); B) ++ j; C) x=a+b; D) ++(j+1); 22.设a为5,执行下列语句后,b的值不为2的是( )。C
A) b=a/2 B) b=6-(--a) C) b=a%2 D) b=a>3?2:2 23.以下语句中符合C语言语法的赋值语句是( )。A
A) m=n ; B) a=10+b,b+=a+10; C) m+n=10; D) a=7+b,c=a+7; 24.以下选项中与a=i++完全等价的表达式是( )。C
A) a=++i B) i=i+1,a=i C) a=i,i=i+1 D) a+=i+1 25.设int a=10,则执行完语句a+=a-=a*a后,a的值是( )。B
A) -90 B) -180 C) 100 D) -100 26.执行下面程序中的输出语句后,
main() { int a;
printf(“%d\\n”,(a=4*6,a*2),a+5); }
a的值是( )。B
A) 48 B) 24 C) 29 D) 53
27.设有条件表达式:(a)?i++:j--,则以下表达式中与(a)完全等价的是( )。A
A) (a!=0) B) (a==0) C) (a==1) D) (a!=1) 28.以下选项中非法的表达式是( )。A
A) a+1=a+1 B) a=b==0 C) (char)(100+100) D) 7<=x<60 29.已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1&&y+z/2的值是( )。A
A) 1 B) 12 C) 0 D) 5 30.以下程序运行后的输出结果是( )。D
main()
{ int i=1,j=2,k=3; if(i++==1&&(++j==3||k++==3)) printf(“%d %d %d\\n”,i,j,k); }
A) 1 2 3 B) 2 3 4 C) 2 2 3 D) 2 3 3 31.当变量c的值不为2、4、6时,值也为”真”的表达式是( )。B
A) (c==2)||(c==4)||(c==6)
B) (c>=2&& c<=6)||(c!=3)||(c!=5) C) (c>=2&&c<=6)&&!(c%2) D) (c>=2&& c<=6)&&(c%2!=1) 32.有以下程序:
main()
{ int a=1, b=2,j=0, n=0,i; i=(n=b>a)||(j=a
程序运行后的输出结果是( )。A
A) 1,0 B) 0,1 C) 0,0 D) 1,1 33.表示关系M<=N<=P的C语言表达式为( )。B
A) (M<=N)AND(N<=P) B) (M<=N)&&(N<=P) C) (M<=N<=P) D) (M<=N)&(N<=P)
34.设ch是char型变量,其值为C,且有下面的表达式ch=(ch>='A'&&ch<='Z')?(ch+32):ch 上面表达式的值是( )。A
A) c B) Z C) C D) z
35.已有定义:char c;,程序前面已在命令中包含ctype.h文件。不能用于判断c中的字符是否为大写字母的表达式是( )。B
A) isupper(c) B) 'A'<=c<='Z' C) 'A'<=c&&c<='Z' D) c<=('z'-32)&&('a'-32)<=c
36.设a、b和c都是int型变量,且i=3、j=4、k=5,则下面的表达式中,值为0的表达式是( )。D
A) 'i'&&'j'&&'k' B) i<=j C) i||+k&&j-k D) !((i A) i=1+j+k=i+2; B) 1=1+i++=i+5; C) i=7+1,i++,1+4 D) i=1+2,k=j+2; 38.以下程序的输出是( )。C main() { char x=040; printf(“%d\\n”,x=x<<1); } A) 32 B) 20 C) 64 D) 40 39.设有以下语句: char a=3,b=6,c; c=a^b<<2; 则c的二进制值是( )。A A) 00011011 B) 00010100 C) 00011100 D) 00011000 40.有以下程序: main() { int x=3,y=2,z=1; printf(“%d\\n”,x|y&~z); } 程序运行后的输出结果是( )。B A) 6 B) 3 C) 1 D) 0 (四)输入与输出函数 1.阅读以下程序: #include { int case;float printF; printf(\请输入2个数:\ scanf(\ %f\ printf(\ %f\n\} 该程序在编译时产生错误,原因是( )。A A) 定义语句出错,case是关键字,不能用作用户自定义标识符 B) 定义语句出错,printF不能用作用户自定义标识符 C) 定义语句无错,scanf不能作为输入函数使用 D) 定义语句无错,printf不能输出case的值 2.现有格式化输入语句,scanf(\],sum]y=%d,line]z=%dL\,已知在输入数据后,x,y,z的值分别是23,56,78,则下列选项中正确的输入格式是( )。D A) 23,56,78 3.x,y,z被定义为int型变量,若从键盘给x,y,z输入数据,正确的输入语句是( )。B A) INPUT x、y、z; B) scanf(\C) scanf(\ D) read(\4.有以下程序 #include { char c1='1',c2='2'; c1=getchar(); c2=getchar(); putchar(c1); putchar(c2); } 当运行时输入:a<回车>后,以下叙述正确的是( )。A A) 变量c1被赋予字符a,c2被赋予回车符 B) 程序将等待用户输入第2个字符 C) 变量c1被赋予字符a,c2中仍是原有字符2 D) 变量c1被赋予字符a,c2中将无确定值 *5.若在定义语句int a,b,c,*p=&c;之后,接着执行以下选项中的语句,则能正确执行的语句是( )。D A) scanf(\ B) scanf(\C) scanf(\ D) scanf(\ 6.设变量均已正确定义,若要通过scanf(\语句为变量a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。以下所示的输入形式中正确的是(注:□代表空格字符)( )。D A) 10□X□20□Y<回车> B) 10□X20□Y<回车> C) 10□X<回车> D) 10X<回车> 20□Y<回车> 20Y<回车> 7.执行以下程序时输入1234567 #include { int a=1,b; scanf(\ printf(\} A) 12367 B) 12346 C) 12312 D) 12345 8.有以下程序,其中%u表示按无符号整数输出: main() { unsigned int x=0xFFFF; /* x的初值为十六进制数 */ printf(\} 程序运行后的输出结果是( )。B A) -1 B) 65535 C) 32767 D) 0xFFFF *9.当用户要求输入的字符串中含有空格时,应使用的输入函数是( )。C A) scanf() B) getchar() C) gets() D) getc() *10.以下4个选项中,不能看作一条语句的是( )。C A) ; B) a=5,b=2.5,c=3.6; C) if(b!=5)x=2;y=6; D) return j; 11.以下程序的输出结果是( )。B main() { int a=20; printf(\} A) 20, 024,0x14 B) 20, 24,14 C) 20, 0x14,024 D) 20, 20,20 12.有以下程序: #include { char a,b,c,d; a=getchar(); b=getchar(); scanf(\ printf(\} 当执行程序时,按下列方式输入数据(从第1列开始, 1 则输出结果是( )。C A) 1234 B) 12 C) 1 D) 1 34 23 234 13.使用scanf(\要使a,b均为50,正确的输入是( )。C A) a=50 b=50(空格分开) B) 50 50(空格分开) C) a=50,b=50 D) 50,50 14.已知a、b、c、d为int型变量,若从键盘输入:1,3,5,7<回车>,使a的值为1、b的值为3、c的值为5、d的值为7,,以下选项中正确的输入语句是( )。D A) scanf(\B) scanf(\ C) scanf(\D) scanf(\ 15.设有定义:long a=-123456L;,则以下能够正确输出变量a值的语句是( )。A A) printf(\ B) printf(\ C) printf(\ D) printf(\16.以下程序的输出结果是( )。A main( ) { int k=21; printf(\} A) 21,25,15 B) 21, 21,21 C) 21, 0x25,015 D) 21,21,15 17.下面程序的输出是: ( )。C main( ) { int k=12; printf(\} A) k=12,k=12,k=12 B) C) k=12,k=14,k=c D) k=11,k=12,k=13 k=12,k=013,k=0b
正在阅读:
c语言第3章练习题答案10-31
abaqus建模中映射节点的方法04-25
2012-2013苏科版八年级生物上册教学工作计划06-12
炼钢厂各岗位职责(全)05-23
2012年发展心理学练习题10-22
秋天的声音作文300字07-06
开展妇幼健康服务宣传月活动总结03-12
201612当代中国经济尔雅期末考试03-21
100位美国历史名人07-22
电子商务-B-第14讲09-04
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 练习题
- 答案
- 语言
- 2012静疗题库
- 市场营销专业论文选题
- 基于Labview的电压测量仿真实验报告
- 物理化学表面现象练习题(含答案及详细讲解)
- 积善成德,明德惟馨崇德向善征文
- 北师大版小学语文一年级下册生字表
- 金融专业学年论文备选题目
- 00级五年制毕业外科A卷
- redo日志相关操作
- 杭州市团务知识学习网 网上自测题及答案(5套,每套100题)
- 90度精密移相器实验报告
- 招聘工作指南
- 诗经与楚辞
- 带电粒子在磁场中运动最小面积
- 高中历史人教版必修三第二单元检测题和答案
- 2013学年高一必修2第四章《工业地域的形成与发展》 - 图文
- 风景园林-工程建设题集(2016年工程师职称答辩参考用书题库)
- 原电池和电解池电极反应
- 校园安全治理健全报告与校园安全自查自检报告汇编
- 人教版高中语文中国古代诗歌散文欣赏理解性默写(附答案)