C语言程序设计复习题

上传人:无*** 文档编号:102361748 上传时间:2022-06-06 格式:DOC 页数:24 大小:207.50KB
收藏 版权申诉 举报 下载
C语言程序设计复习题_第1页
第1页 / 共24页
C语言程序设计复习题_第2页
第2页 / 共24页
C语言程序设计复习题_第3页
第3页 / 共24页
资源描述:

《C语言程序设计复习题》由会员分享,可在线阅读,更多相关《C语言程序设计复习题(24页珍藏版)》请在装配图网上搜索。

1、一、 选择题:1、以下能正确定义数组并正确赋初值的语句是( D )。A、int N=5,bNN; B、int a12=1,3;C、int c2=1,2,3,4; D、int d2=1,2,3,4;2、执行下面的程序时若从键盘上输入6,则输出结果是( D )。main() int x; scanf(%d,&x); if(x+5) printf(%dn,x); else printf(%dn,x-); A、7 B、6 C、5 D、43、下列四组选项中,不合法的用户标识符的选项是( D )。A、P_0 B、 _A C、temp_123 D、b-a 4、若x、i、j和k都是int型变量,则计算下面表达

2、式后,x的值为( C )。 x=(i=4,j=16,k=32)A、 4 B、 16 C、 32 D、 525、下列选项中哪个是合法的标识符( B )。A、 int B、 _a2 C、 b# D、 7b 6、下列选项定义了整型变量a和b,并为这两个变量赋初值为5,不正确的语句是( B )。A、 int a=5,b=5; B、 int a=b=5;C、 int a,b; D、 int a=5,b;a=5;b=5; b=5;7、若变量已正确定义并赋值,下面不符合C语言语法的表达式是( A)。A、a=a+7; B、a=7+b+c,a+ C、int 12.3%4 D、a=a+7=a+b8、执行下面的程序

3、时若从键盘上输入6,则输出结果是( C )。main() int x; scanf(%d,&x); if(x-5) printf(%dn,x); else printf(%dn,+x); A、7 B、6 C、5 D、49、设有程序段 int k=10;while(k=0) k=k-1;则下面描述中正确的是( B )。A、 while循环 10次 B、 循环体一次也不执行C、 循环是无限循环 D、 循环体只执行一次10、以下对数组的定义方式哪个是正确的?( A )A、 #define size 10 B、 int n=2; int asize ; int an; C、 char name(-10

4、); D、 float weight10.3;11、以下对二维数组a的正确说明是( C )。A、 int a7; B、 float a7,7; C、 double a77; D、 float a(7)(7);12、以下程序的运行结果是( A )。main() int x=1,a=0,b=0; switch(x) case 0: b+; case 1: a+; case 2: a+;b+; printf(“a=%d,b=%dn”,a,b); A、 a=2,b=1 B、 a=1,b=1 C、 a=1,b=0 D 、a=2,b=213、下列字符中,ASC码值最小的是( A )。A、 A B、 a C

5、、 Z D 、x14、设a、b和c都是int型变量,且a=3,b=4,c=5;则以下的表达式中,值为1的表达式是:( C )A、!c&1 B、a=b C、!a|b+c&b-c D、!a|!b15、设有定义int a,b;当执行scanf(“%d,%d”,&a,&b);语句时,若要求a、b的值分别为2、3,则正确的输入格式为( D )。 A、 a=2,b=3 B、 a=2 b=3 C、 2 3 D、 2,3 16、若有定义int i=3,j=3; printf(%d, %d,+i ,j+); 其运行结果为( A )。A、 4,3 B、 3,3 C、 4,4 D、 3,4 17、以下不正确的语句是

6、( B )。A、 if(xy) ; B、 if(x=y)&(x!=0) x+=y; C、 if(x!=y) scanf(“%d”,&x); else scanf(“%d”,&y) ; D、 if(xb 23、设int n=3;则有表达式+n,n的结果是( C )。A、2 B、3 C、4 D、524、从循环体内某一层跳出,继续执行循环外的语句是( A )。A、 break语句 B、 return语句 C、 continue语句 D、 空语句25、下面for 循环的正确描述是( A )。A、for循环体语句中,可以包含多条语句,但必须用花括号括起来B、for循环只能用于循环次数已经确定的情况,不能

7、用于无限循环C、for循环是先执行循环体语句后判断表达式D、在for循环中,不能用break语句结束循环26、下列实型常量用指数形式表示正确的是( A )。 A、 123E2 B、 .e4 C、 e-5 D、 1.2E-3.5 27、a是int类型变量,c是字符变量。下列输入语句中错误的是( B )。A、 scanf(%d,%c,&a,&c); B、 scanf(%d%c,a,c);C、 scanf(%d%c,&a,&c); D、 scanf(d=%d,c=%c,&a,&c);28、执行下列语句后输出结果是( C )。 int i,x33=1,2,3,4,5,6,7,8,9;for(i=0;i

8、b)&(n=cd)后n的值( D )。A、 1 B、 2 C、 3 D、 030、C语言中while和do-while循环的主要区别是( A )。A、do-while的循环体至少无条件执行一次B、while的循环控制条件比do-while的循环控制条件严格C、do-while允许从外部转到循环体内D、do-while的循环体不能是复合语句31、下列运算符中优先级最高的是( B )。A、 y) x=y; y=z; z=x;printf(“x=%d,y=%d,z=%dn”,x,y,z);A、 x=7,y=8,z=7 B、 x=7,y=9,z=7C、 x=8,y=9,z=7 D、 x=8,y=9,z

9、=851、执行以下程序段后的输出结果是( C )。main() int n=3;while(n- -!0) ;printf(“%dn”,n); A、 0 B、 1 C、 -1 D、 死循环52、逻辑运算符两侧运算对象的数据类型是 ( D )。A、只是0或1 B、 只能是0或非0正数C、 只能是整型或字符型数据 D、 可以是任何合法的数据类型53、下面能正确表示八进制数的是( D )。A、 0x16 B、 029 C、 -114 D、 03354、C语言中主函数的个数是( A )。 A、 1 B、 2 C、 3 D、 任意个 55、以下描述中正确的是( D )。A、 while、do-while

10、、for循环中的循环体语句都至少被执行一次B、 do-while循环中,while(表达式)后面的分号可以省略C、 while循环体中,一定要有能使while后面表达式的值变为“假”的操作D、 do-while循环中,根据情况可以省略while56、下面正确的字符常量是( B )。A、 abc B、 a C、 a D、 ab257、下列实型常量用指数形式表示正确的是( B )。 A、.e6 B、 123E4 (C、e-6 D、 2.1E-5.3 58、以下程序的输出结果是( B )。main() int i, a10; for(i=9;i=0;i-) ai=10-i; printf(%d%d%

11、d,a3,a6,a9); A、 258 B、 741 C、 852 D、 36959、设有以下程序段,则下面描述中正确的是( B )。 int k=2;while(k=0) k=k-1;A、 while循环 2次 B、 循环体一次也不执行C、 循环是无限循环 D、 循环体只执行一次60、下列实型常量用指数形式表示正确的是( B )。 A、3E B、1.23E4 C、E D、1.2E-3.4 61、设x,y和z均为int型变量,则执行语句“x=(y=(z=10)+5)- 5;”后,x,y和z的值是( A )。A、 x=10 B、 x=10 C、 x=10 D、 x=10 y=15 y=10 y=

12、10 y=5z=10 z=10 z=15 z=1062、以下程序的输出结果是( D )。main() int x=5,y=5; printf(“%d,%dn” ,-x,y+); A、 4,6 B、 6,5 C、 5,5 D、 4,563、若用数组名作为函数调用的实参,传递给形参的是( A )A、数组的地址 B、数组中第一个元素的值 C、数组中的全部元素的值 D、数组元素的个数64、下列四组选项中,属于C语言合法标识符的选项是( C )。A、2ab B、 f C、_a12 D、?b65、执行以下语句后,则x,y和z的值分别为( B )。int x=1,y=2,z=3; if(xy) z=x;x=

13、y;y=z;A、 x=1,y=2,z=3 B、 x=2,y=3,z=3 C、 x=2,y=3,z=1 D、 x=2,y=3,z=2 66、以下叙述正确的是( C )。A、 在C程序中main函数必须位于程序的最前面B、 C程序的每行中只能写一条语句C、 C语言本身没有输入输出语句,输入输出需要调用库函数D、 在对一个C程序进行编译的过程中,可发现注释中的拼写错误67、已知各变量的类型说明如下: 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

14、、a+=a-=(b=4*3)68、设有定义int a,b;当执行scanf(“%d,%d”,&a,&b);语句时,若要求a、b的值分别为3、5,则正确的输入格式为( C )。 A、a=3,b=5 B、a=3 b=5 C、3,5 D、3 5 69、判断char型变量ch是否为小写字母的正确表达式是(C) 。 A、a=ch=a)&(ch=a)&(ch=z) D、(a= ch) 70、下列选项中,正确的字符常量是( C )。A、“F” B、 C、W D、”71、以下说法中正确的是( C )。A、C语言程序总是从第一个定义的函数开始执行。B、在C 语言程序中,要调用的函数必须在main()函数中定义C

15、、C 语言程序总是从main()函数开始执行D、C语言程序中的main()函数必须放在程序的开始部分72、以下程序的运行结果是( A )。main() int k=4,a=3,b=2,c=1;printf(“%dn”,ka?k:cb?c:a);A、 1 B、 2 C、 3 D、 473、以下选项中可作为C语言合法整数的是( C )。A、10110B B、0386 C、0xffa D、x2a274、以下叙述错误的是( D )。A、一个C源程序可由一个或多个函数组成。B、一个C源程序必须包含一个main函数。C、C程序的基本组成单元是函数。D、在C程序中,注释说明只能位于一条语句的后面。75、下列

16、运算符中优先级最低的是( A )A、? : B、& C、+ D、!=76、设有定义int a,b;当执行scanf(“%d %d”,&a,&b);语句时,若要求a、b的值分别为12、24,则正确的输入格式为( D )。 A、a=12,b=24 B、a=12 b=24 C、12,24 D、12 24 77、下列运算符中,不属于关系运算符的是(C)。A、 = C、 ! D、 ! = 78、若定义int a10;则对a数组元素的正确引用的有( D )。 Aa10 Ba5.5 Ca(9) Da5-5 79、已知字母A的ASC值为65,且c2为字符型,则执行以下语句后,c2中的值为( A )。print

17、f(“%c”,c2=A+6-3); A、D B、68 C、不确定的值 D、C80、能正确表示逻辑关系:“a0”的C语言表达式是(C )。 A、a0 B、a0 C、a0 D、a081、字符串“Aabc”的长度为( C )。A、1 B、5 C、4 D、682、下列程序段运行后,x的值是( D)。int a=1,b=0,x=4; if(a=0)+x; else if(b!=0)x=7; else x=13;A、4 B、5 C、7 D、1383、设 a、b、c、d、m、n均为 int型变量,且 a=5、b=6、c=7、d=8、m=0、n=0,则逻辑表达式(m=ad)运算后,表达式的值为( B )。A、

18、0 B、1 C、2 D、384、以下选项中,符合C语言标识符命名规则的是(B)。 A、Aa_! B、abc C、for D、3a85、若希望当A的值为奇数时,表达式的值为真,A的值为偶数时,表达式的值为假,则以下不能满足要求的表达式是(C)。A、A%2= =1 B、!(A%2= =0) C、!(A%2) D、A%286、以下程序段运行后,循环体执行( A )。int n=3; while(n=0) n/=5; n-; printf(“%d”,n);A、0次 B、1次 C、2次 D、3次87、结构化程序设计语言的基本结构中不包括(D)。A、顺序结构 B、选择结构 C、循环结构 D、指针结构88、

19、C语言程序中,主函数有( A )。A、1个 B、可以一个都没有 C、可以有多个 D、2个89、设n=10,i=4,则赋值运算 n%=i+1执行后,n的值是( A )。.A、 0 B、 3 C、 2 D、 190、当x、y、z的值分别为3、4、5时,执行以下各语句: if(xz)x=y;y=z;z=x; else x=z;z=y;y=x; 则x,y,z的值为( B )。A、5 5 4 B、5 4 5 C、3 4 5 D、5 4 491、下面有关for循环的正确描述是( D )。A、for循环只能用于循环次数已经确定的情况B、for循环是先执行循环体语句,后判定表达式C、在for循环中,不能用br

20、eak语句跳出循环体D、for循环体语句中,可以包含多条语句,但要用花括号括起来92、以下不正确的叙述是( D )。A、在C程序中,逗号运算符的优先级最低B、在C程序中,APH和aph是两个不同的变量C、若变量a和b类型相同,在计算了赋值表达式a=b后b 中的值将放入a中,而b 中的值不变D、当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值93、关于C程序循环语句说法不正确的是(A )。A、只能构成单个循环 B、while语句中可以有continue语句 C、可以进行多重循环嵌套 D、for语句中可以有break语句94、一个C程序的执行是从( A )。A、 本程

21、序的main函数开始,到main函数的结束B、 本程序文件的第一个函数开始,到本程序文件的最后一个函数的结束C、 本程序文件的main开始,到本程序文件的最后一个函数的结束D、 本程序文件的第一个函数开始,到本程序文件的main函数的结束95、下面不正确的字符串常量是( A )。A、 abc B、 1212 C、 0 D、 96、有以下程序main()int x,i;for(i=1;i100;i+)x=i;if(x%2=0) if(x%3=0) if(x%7=0) printf(%d ,x); ( B )。A、39 81 B、42 84 C、26 68 D、28 7097、若有定义char a

22、rray=CHINA;则数组array所占存储空间的字节数为 ( C )。A、4 B、5 C、6 D、798、以下能正确定义数组并正确赋初值的语句是( D )。A、int N=5,bNN; B、int a12=1,3;C、int c2=1,2,3,4; D、int d32= 1,2,3,4;99、以下变量均为整型,则值不等于7的表达式是( C )。A、(m=n=6,m+n,m+1) B、(m=n=6,m+n,n+1)C、(m=6,m+1,n=6,m+n) D、(m=6,m+1,n=m,n+1)100、以下( D )是八进制数。A、0x12 二进制 B、123十进制 C、1001 十六进制 D、

23、0123101、以下程序的输出结果是( B )。main() int x=2,y=-1,z=2; if(xy) if(y21的值为 0 ,表达式123的值是 1 。15、定义int a35=0,1,2,3,4,3,2,1,0,0;则初始化后a11的值是 2 。16、表达式1331的值是 0 。17、执行以下的程序段后,a= 3 ,b= 3 。 int x=3,y=2,a,b,c; a=(x=y+)?x-:y+); b=x+;18、表达式(int)(7.0/2.0)的值是 3 。19、有表达a=(b=4)+(c=2),若a,b,c均是int型变量,则计算表达式后a的值为 6 ,b值为 4 ,c值

24、为 2 。20、在Turboc 2.0中,一个char型数据在内存中所占的字节数为 1 ;一个float型数据在内存中所占的字节数为 4 。21、执行以下的程序段后,a= 4 ,x= 12 。 x=(a=4,6*2)22、结构化程序设计语言的三种基本结构是_ 顺序结构_、_选择结构 _、_循环结构_ _。23、条件“x0或10x10&x20 。24、C提供的三种逻辑运算符是 &, |,_!_ _。25、C程序的开发过程有编辑、 编译_、_链接 _、_运行_ 。26、程序的三种基本结构是_选择 _ _、_ _顺序 _和_循环 _ _结构。27、所有运算符中优先级最低的为 逗号 运算符。28、从用

25、户使用角度看,函数分为两类: 系统库 函数和 用户自定义 函数。29、若x为int型变量,则执行以下语句后x的值是_-16_ _。x=8;x+=x=x+x;。30、若x,y为int型变量,则表达式(y=6,y+1,x=y,x+1)的值是 7 。 四、读程序,写出运行结果1、以下程序的运行结果为( *#*#*#$ )。main() int i; for(i=1;i=5;i+) if(i%2!=0)printf(“*”); else continue;printf(“#”);printf(“$n”); 2、运行结果为( 4 ) main() char a; a=C-A+2; printf(“%cn

26、” ,a) ; 3、运行结果为( 132 )main()int i,m=0,n=0,k=0; for(i=9;i=11;i+)switch(i/10) case 0: m+; n+; break;case 10: n+; break;default: k+; n+; printf(“%d%d%dn”, m,n,k);4、运行结果为( A+B=9 ) plus(intx, inty) intz; z=x+y; return(z); main() inta=4,b=5,c ; c=plus(a,b); printf(A+B=%dn,c); 5、以下程序的运行结果为( 3 )。main() int

27、x=100,a=10,b=20; int v1=5,v2=0; if(ab) if(b!=15) if(v1= =0) x=1; else if(v2!=0) x=10; x=3; printf(“%d”,x); 6、以下程序的运行结果为( Fail! )。main() int score=2; switch(score) case 3: printf(“Pass!”) ; case 2: printf(“Fail!”) ;break; default : printf(“data error!”) ; 7、若运行以下程序时,则下面程序的运行结果是(4,10 )。#include main()

28、int a,b;for(a=1,b=1;a=10)break; if(b%3=1) b+=3; continue; b=b+5; printf(%d,%dn, a,b); 8、运行结果为( 741 ) 。main() int i, a10; for(i=9;i=0;i-) ai=10-i; printf(%d%d%d,a3,a6,a9);9、运行结果为( mo )#include main() char a=“morning”,t;int i,j=0;for(i=1;i7;i+)if(ajai) j=i;t=aj;aj=a7;a7=aj;printf(“%s”,a);10、运行结果为(4,13

29、)。 main( ) int a,b; for(a=1,b=1;a=10) break; if(b%4= =1) b+=4; continue; b=b-5;printf(%d,%dn,a,b) ; 11、运行结果为 30 。main( ) int a33=1,2,9,3,4,8,5,6,7,i,s=0; for(i=0;ib) if(b0) c=0; else c+; printf(%dn,c);16、以下程序的运行结果为( 13,4 )。main()int x,y;for(y=1,x=1;y=10)break; if (x%2=1) x+=4; continue;x+=3;printf(“

30、%d,%d”,x,y);17、运行结果为 30 。sub(int x,int y) return x+y; main( ) int x1=10,x2=20,t;t=sub(x1,x2);printf(%dn,t); 18、运行结果为( 3 ) 。 main()int a=1,b=3,c=5,d=5; if(ab) if(cd) x=1; else if(ac) if(bd) x=3; else x=4; else x=5; else x=6;printf(%dn, x) ; 19、运行结果为( 200 ) 。sub(int x,int y) return x*y ; main() int x1

31、=10,x2=20,t;t=sub(x1,x2);printf(%d n,t); 20、以下程序的运行结果为( 15 )。main() int i,a33= 1,2,3,4,5,6,7,8,9 ,s=0; for(i=0;i3;i+) s=s+ai2-i ;printf(%d,s );21、运行结果为( 12 ) 。main() int a33=1,2,9,3,4,8,5,6,7,i,s=0; for(i=0;i3;i+)s=s+aii;printf(%dn, s) ; 22、运行结果为( 10,20 ) 。sub(int x,int y) int t;t=x; x=y; y=t; main() int x1=10,x2=20;sub(x1,x2);printf(%d,%dn,x1,x2); 23、运行结果为( 5,3,4 ) 。main()inta=4,b=3,c=5,t=0;if(ab)t=a;a=b;b=t;if(ac)t=a;a=c;c=t;printf(%d,%d,%dn,a,b,c);五、编写下列程序1、有一个数列前三项分别为 1,2,3,从第四项开始为前三项之和,如1,2,

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!