C语言练习题a汇总_第1页
C语言练习题a汇总_第2页
C语言练习题a汇总_第3页
C语言练习题a汇总_第4页
C语言练习题a汇总_第5页
已阅读5页,还剩16页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C语言练习题 一、单项选择题 1. 一个C程序的执行是从() A. B. C. D. O 本程序的mai n函数开始,到ma in函数结束 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 本程序的main函数开始,到本程序文件的最后一个函数结束 本程序文件的第一个函数开始,到本程序main函数结束 2. 字符型数据使用( A.单引号 3. 下列符号中用来表示 A. rB. n 4. 以下不能定义为用户标识符的是 A. MAIN 5. 被调函数通过 A. if 6. printf( “%d ” A. 2 )括起来。 B.双引号C.圆括号 C语言中的回车换行的是()。 C. b D.

2、t ()。 B. _HJC. 2o ngD. LINE1 ()语句,将值返回给主调函数。 B. forC. while ,7%4);执行之后,输出结果是 B. 3C. 4 D. return ()。 D. 1.75 D. # 7. C语言中形参的默认存储类别是() A.自动 auto B.静态 static 8. 表达式1 A. 1B. 2C.3 15. 在C语言中,若对函数类型未另显示说明, C.i nt D.x2) A.voidB.double 16. 在C语言中,每个语句必须以 A.回车符 B.冒号 17. 字符串的结束标志是()。 A. 0B. 0 D.4 则函数的隐含类型是 D.ch

3、ar () 结束。 逗号 C. D.分号 () 类型。 C. 0 18. printf(%c,%d,b, b);的输出结果是( D. 0 A. b,98 B. b 19. 复合语句是用() A. () B. 98C. 98,b 括起来的语句组。 C. D. 98 b D. 20. int a4=5,3,8,9;其中 a3的值为( A. 5 B. 3C. 8 21. 若有以下定义:float w20;,贝y w A. 20B. 19C. 21 22. for(i=1;iB .对函数func 的调用。 C.对函数func 的声明。 D .不合法的 29.若有说明int a10; 则对a数组兀素的不

4、正确引用 是()。 A. a0 B. ai C. a10 D. a 2+3 30.以下对二维数组 a的正确定义是( )。 A. int a3 B .float a(3,4) C. floata34 D .int a(3)(4) 31. C语言允许函数类型缺省定义,此时函数值隐含的类型是 ()。 A. float B. int C. long D. double 语句 )。 32.个C语言的执行是从()。 A. 本程序的主函数开始,到本程序的主函数结束 B. 本程序的第一个函数开始,到本程序的最后一个函数结束 C. 本程序的主函数开始,到本程序的最后一个函数结束 D. 本程序的第一个函数开始_,

5、到本程序的主函数结束 A. stdio.hB. math.h 25. C语言程序的基本单位是()。 A.过程B.函数 26. 选出下列标识符中不合法的标识符的是( 33.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是 A.地址传递 B.单向值传递 D.传递方式由用户指定 35.可用于跳出switch和循环结构的语句是()。 A. break 语句B .return 语句C. contin ue语句D.空语句 .11,10 C . 10, 10 D . 11, 11 C.由实参传给形,再由形参传回实参 34.以下程序的输出结果是()。 int x=10,y=10; print

6、f( “ d %dn”,x+,+y); A. 10,11 B 36.若 x=5,y=3 则 y*=x+5; y 的值为()。 A. 10 37. 若有定义 值是() A.0 int B. 20 x=3,y=2 和 float B. 2 38. 下列程序的输出结果是()。 C. 15D . 30 a=2.5,b=3.5,则表达式:(x+y)%2+(int)a/(int)b D. 1 char str110=abcd, str210=ABCDEF, strcpy(str1,str2); prin tf(%s,str1); A. abcd B 39.假定 w x、y、z、 .ABCDEF C m均为

7、int型变量,有如下程序段: .abcdABCDEF D . abcdEF w=1;x=2;y=3;z=4; m=(wx)?w:x; m=(my)?m:y; A.4 则该程序段执行后,m的值是() B. 3 40.表达式:10!=9的值是(J。 o C.2 一 D. 1 A. true B.非零值CD 41. 下面合法的C语言字符常量是()。 A.tB. A C.65 D. A 42. C语言的基本数据类型包括 ()。 A整型,实型,逻辑型 C.整型,字符型,逻辑型 43. C语言中while和dowhile循环的主要区别是()。 B.整型,实型,字符型 D.整型,实型,逻辑型,字符型 A-

8、dowhile 的循环体至少无条件执行一次 while的循环控制条件比 dowhile dowhile允许从外部转到循环体内 dowhile循环体不能是复合语句 B. C. 的循环控制条件严格 D. 44. 单精度实数的数据类型符为。 A. int B. char C. float D. double 45. 字符串常量使用()括起来。 A.单引号 B. 双引号 C. 圆括号 D. # 46. C语言规定,函数返回值的类型是由 A. return语句中的表达式类型所决定 B. 调用该函数时的主调函数类型所决定 C.调用该函数时系统临时决定 47. 设有说明:char w; int x; A.

9、floatB. 48. 在C语言中,每个语句必须以 A.回车符 B. 冒号 C. D. float char () 结束。 逗号 D. y; 在定义该函数时所指定的函数类型决定 则表达式:w*x-y值的数据类型()。 C. intD. double 分号 49. C语言规定:在一个源程序中, A.必须在最开始 main函数的位置( B.必须在系统调用的库函数的后面 C.可以任意 D.必须在最后 50. C语言程序的基本单位是( A.函数B.过程 )O。 C.子程序 D.子例程 51.在下列字符串中,合法的标识符是()o。 A. p12 for (i=0;i20;i+) if (i%5!=0)

10、break; a+=i; /*/ A. 0 B. 1 C. 20 )oo D. 19 53、现有以下定义, 是()。 int a ; double b ; float c ; char k ; 则下面的表达式a*b+c/k值的类型 A. i nt B. double C. float D. char 54、C语言规定,调用一个函数时,实参变量和形参变量之间的数据传递是( A.地址传递B.由实参传给形参,并由形参返回给实参 D.由用户指定传递方式 C.值传递 55、printf( “ d” ,15/4);执行之后,输出结果是( A. 2 B. 3 C. 4 D. 3.75 56、在C语言中,以下

11、正确的描述是 ()。 A. 函数的定义可以嵌套,但函数的调用不可以嵌套 B. 函数的定义不可以嵌套,但函数的调用可以嵌套 C. 函数的定义和函数的调用均不可以嵌套 D.函数的定义和函数的调用均可以嵌套 57、 若变量c为char类型,能正确判断出 c为大写字母的表达式是( A. A=c= A)|(c= Z) C. CA=c)D. (c= A) 执行之后,输出结果是( A. 3.4 B. 4 C. 3.6 70. printf( “%d”,7%4); 执行之后,输出结果是( A. 2 B. 3 C. 4 D. 1.75 71. 复合语句是用 () 括起来的语句组。 A. ( ) B. C. D.

12、 72. 在调用函数时,如果实参是简单变量,它与 对应形参 D. 3 )。 )。 B. 73. 右x=0, y=3, z=3,以下表达式值为 0的是 ()。 A . !x B.xy? 1:0C. x for (i=1;i20;i+) if (i%5!=0) break; a+=i; /*/ A. 0 B. 1 C. 20 D. 19 78. 有定义语句: int A. if (ca) x=l; else if(ba) x=2; else x=3; a=l,b=2,c=3,x ;则以下各程序段执行后, x 的值不为 3 的是 ( ) 。 B. if(a3) x=3; else if(a2) x=

13、2; else x=l; 79. 80. 81. 82. 83. 84. C. if (a3) x=3; if (a2) x=2; if (a0) if (a1) A. 0 B.1 D. if(ab) x=b; if(bc) x=c; if(ca) x=a; )括起来。 B.双引号 a的值为( a+=1; a=0; C.2 D. 3 以下程序段的执行结果为( mai n() char c1,c2; c1=97; c2=98; printf( “ c,%cn” A. 97,98 B. a,b C. A,B ,c1,c2); D. C.圆括号 在C语言中,要求运算数必须是整型的运算符是( A. %

14、 B. / C. D.以上都不对 D. # 以上都不对 )。 以下说法中正确的是()。 A. C语言程序总是从第一个定义的函数开始执行 B. 在C语言程序中,要调用的函数必须放在main()函数中定义 C. C语言程序总是从 main()函数开始执行 D. C语言程序中的main() 下列程序段的输出结果是( 函数必须放在程序的开始部分 )。 #defi ne N 10 mai n() int x=8; printf( C. 1分,共 “d ,N+x); A. 8B. N 二、判断题(每小题 注意:正确的填A,错误的填B 1. C语言有三种结构化程序设计方法,分别为顺序结构、选择结构和循环结构

15、。 2. 在 C程序中,min 和 Min 代表不同的变量。() 3C语言本身不提供输入输出语句,输入和输出操作是由库函数来实现的。 4. C语言规定:在一个源程序中,main函数的位置必须在最开始。() 5. 在C语言中,要求运算数必须是整型的运算符是/ 6. 在C语言中,逗号运算符的优先级最低。() 7. 字符串是C语言中一种基本数据类型,字符串总是以 8. 有数组定义 int a22=1,2,3;则 a22 9. 在调用函数时,实参的个数与形参的个数可以不一致。 10. C语言程序的变量必须先定义再使用。() 11. C语言有三种结构化程序设计方法,分别为顺序结构、 10 10 分) D

16、. 18 h作为结束标志。 的值为3。1() 选择结构和循环结构。 12、 C语言中的逻辑值“真”是用 T表示的,逻辑值“假”是用F表示 的。() 13、 利用printf函数可以输出一个字符串。() 14、 一个C程序必须有且只能有一个main()函数。() 15、for语句作为循环控制语句时,从语法上将其括号内各个表达式都可缺省,但表达式内 的分号却不可以省。() 16、 17、 18 19、 20、 21、 在C语言中,虽然有逻辑运算,但没有逻辑型变量。() 在调用函数时,实参的个数与形参的个数可以不一致。() C语言本身没有输入输出语句,是用输入输出函数实现输入输出操作。 C程序的基本

17、组成单位是函数。() 字符串是C语言中一种基本数据类型,字符串总是以n作为结束标志。() 数组大小固定,所有元素的类型必须相同() 22、 C语言中,数组的各元素必须具有相同的类型。 23、 C语言规定:标识符应由字母、下划线和数字组成,且可以是上述字符的任意组合,其 长度也是任意的。() 24、 数组在定义时没有必要指定数组的长度,其长度可以在程序中根据元素个数再决定。() 25、 if语句有多种使用方法,其中if子句和else子句也都可以单独使用。() 26、for语句作为循环控制语句时,从语法上将其括号内各个表达式都可缺省,但表达式内 的分号却不可以省。() 27、 28 29、 30、

18、 31. 32. 33. 在C语言中,虽然有逻辑运算,但没有逻辑型变量。() 在对一个C程序进行编译的过程中,可以发现注释中的拼写错误。( C语言本身没有输入输出语句,是用输入输出函数实现输入输出操作的。 C程序中数组名可以与其他变量名相同。() 字符串是C语言中一种基本数据类型,字符串总是以n作为结束标志。 利用函数putchar() 可以输出一个字符串。() 一个循环的循环体中还可以包含另外一个循环,称为循环嵌套。 ABC和abc是相同的标识符。 ) 33. C语言不区分大小写字母,如 34. 在C程序中,语句之间必须要用分号“; 35. 一个C程序必须有且只能有一个main() 36.

19、C语言中标识符不能与保留字同名。 ( 37. C语言中数组名可以与其他变量名相同。 ”分隔( 函数。( ) ( ) 38. 字符数据在计算机内部也是以二进制形式来表示的。 39. 在调用函数时, 40. while 循环是 ( ) 三、程序分析题 实参的个数与形参的个数可以不一致。 “先执行,后判断”,即不管循环条件是否满足, (每小题4分,共24 分) ) 循环体至少执行一次。 1. 分析程序的运行结果 #i nclude void mai n() int a,b,x; a=3; b=a-; x=a+b; printf(“ %(X); 2. 分析程序的运行结果 yes ); no ); #i

20、nclude void mai n() int a=5 , b=3; if(ab) printf( elseprints 3. 分析程序的运行结果 # in clude void mai n() int i,t; t=1; for(i=2;i=10;i+) t=(t+1)*2; prin tf(%dn,t); 4.若i=7,下列程序的运行结果是 switch(i) case 6: i+=1; break; case 7: i+=2; break; case 8: i+=3; break; case 9: i+=4; break; prin tf(”dn ,i); 5. 利用一维数组求斐波那契数

21、列,补充完整以下程序。 #in clude void mai n() | int i, f20=1,1; for(i=2;i20;i+) for(i=0;i20;i+)丨 prin tf(%12d,fi); 6. 判断某一年是否是闰年,请补充完整以下程序。 #in elude void mai n() int year; ”); pnntf(“ p lease input a year: scanf(“ d ,year); if ( printf( “ d is a leap yn” year); else printf( “ %d is not a leap yea” ,year); 7.

22、写出下面程序的执行结果 _ mai n() int num=0; while (num 0) y=1; else if(x=0) y=0; else y= 1; prin tf(%d,y); 9. 计算1+1/2+1/4+1/50的值,请填空使完整。 ma in () int i=2; float sum=1.0; while(i= ) sum+=1.0/i; i+=2; pnntf( sum=%fn ”,sum); 10. 写出下面程序的执行结果。 (1) #inelude mai n() int num=0; while (num =2) nu m+; pnntf( %dn”,num);

23、执行结果: 11. 写出下面程序的执行结果。 #in elude mai n() int x=5,y; if (x0)y=1; else if (x=0)y=0; else y= 1; prin tf(y=%d,y); 执行结果: 12. 阅读程序并填空。 void mai n () (1)编写程序实现两个数互换。 ,x , y ; scanf (“ %d ” , temp=x; printf ( “ %d , %d ”, y ); 13. 判断某一年是否是闰年。 #in clude mai n() printf( please input a year:); seanf( %d,year); if ( printf( printf( %d is a lea p year! n ”,year); %d is not a lea p year!、n ”year); 14.根据程序的功能, (1)计算 main () int i, for( s+=i; printf(“ 2+4+6+100=%dn” ,s); 完成程序

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论