版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、电脑程序设计根底C语言单项选择练习题、根本概念1. c语言程序是由c构成的。A) 一些可执行语言 B)main函数C)函数D)包含文件中的第一个函数2. A是构成C语言程序的根本单位。A、函数 B 、过程 C、子程序D、子例程3. C语言程序从C开始执行A)程序中第一条可执行语句B)程序中第一个函数C)程序中的main函数D)包含文件中的第一个函数4. C语言程序从main()函数开始执行,所以这个函数要写在 _DA) 程序文件的开始B)程序文件的最后C)它所调用的函数的前面D)程序文件的任何位置5、以下说法中正确的选项是 C。A、C语言程序总是从第一个定义的函数开始执行B、在C语言程序中,要
2、调用的函数必须在 main()函数中定义C、C语言程序总是从main()函数开始执行D、C语言程序中的main()函数必须放在程序的开始局部6. 以下方法中错误的选项是D。A. 主函数可以分为两个局部:主函数说明局部和主函数体。B. 主函数可以调用任何非主函数的其它函数。C. 任何非主函数可以调用其它任何非主函数。D. 程序可以从任何非主函数开始执行。7. 以下说法错误的选项是:BA. C程序运行步骤是编辑、编译、连接、执行。B. C语言的变量名必须用小写,常量用大写。C. C语言的三种根本结构是顺序、选择、循环。D. C程序一定由函数构成的。8. 以下关于C语言的说法错误的选项是B :。A)
3、 C程序的工作过程是编辑、编译、连接、运行B) C语言不区分大小写。C) C程序的三种根本结构是顺序、选择、循环D) C程序从main函数开始执行9. 系统默认的C语言源程序扩展名为.C,需经过_C 之后,生成.exe文件,才能运行?A)编辑?编译B )编辑?连接 C)编译?连接 D)编辑?改错*10.以下说法中正确的选项是B 。A. 由于C源程序是高级语言程序,因此一定要在 TC软件中输入。B. 由于C源程序是由字符流组成的,因此可以作为文本文件在任何文本编辑 的软件中输入。C. 由于C程序是高级语言程序,因此输入后即可执行。D. 由于C程序是高级语言程序,因此它是由命令组成的。、数据类型、
4、运算符与表达式1. 不是C语言提供的合法关键字是B *2.C语言提供的合法关键字是D*3.以下不属于C语言中关键字的是_ BA)lo ng B)pri nt C)default D)typedef4. 以下正确的标识符是C。A.-a1B.aiC.a2D.i nt t5. 以下C语言用户标识符中合法的是(B )。A、*y B 、sum C、int D 、%5f6. 下面四个选项中,合法的标识符是:DA. auto B. defi ne C. 6a D. c7以下C语言用户标识符中合法的是B丨。A)3ax B)x C)case D)-e2 E)u nion8.以下选项中合法的用户标识符是BA) l
5、ongB) _2Test C) 3Dmax9 以下四组选项中,正确的 C语言标识符是CA%x请选出可用作A) voiddefi ne10.B a+b C a123C语言用户标识符的一组标识符(B) a3_b3123-abcD)B )C) ForDOsum11、WORD以下四组字符串中都可以用作sizeofCaseC语言程序中的标识符的是123D) 2aA。A、print _3d db8 aBc B、lam one_half start$it 3paiC、str_1 Cpp pow while D、Pxq My->book line# His.age12. 以下C语言标识符中合法的变量名是
6、 _B_。A)2e3 B)you C)*y D)float13. C语言中的简单数据类型包括D。A、整型、实型、逻辑型B、整型、实型、逻辑型、字符型C、整型、字符型、逻辑型 D、整型、实型、字符型14. 以下可以正确表示字符型常量的是A。A、 t ' B 、 aC 、 n D 、29715. 以下表达式中,_ _是正确的C语言字符常量。A) xB)e3 C) COMPUTER D) ' #'16. 在以下表达式中,属于字符型常量的是 B。A) A B) 'a' C) "A" D) b17. 以下选项中合法的字符常量是(B )A)“B&
7、#39;B) n ' C) 68'D) E18 下面字符常量表示错误的选项是 DA) ' a'B) ' ?' C) ' n ' D) ' n 19. 已定义c为字符型变量,那么以下语句中正确的选项是CAc='97' B c="97" C c= a'Dc="a"20. ch是字符型变量,不正确的赋值语句是(A )A) ch='a+b' ;B) ch=' 0 'C) ch=' 7' ;D) ch=''
8、21. C语言中字符型(char)数据在内存中的存储的是(D )A)原码B)补码C)反码D) ASCII码22. 在C语言中,字符型数据所占的内存空间是(C )A)2 个字节 B) 4 字节 C) 1 字节 D)由用户自定义*23 .假设int类型数据占2个字节,那么unsigned int类型数据的取值范围是(B )A)0 255 B)0 65535 C)-32768 32767D)-25625526 .C语言中运算对象必须是整型的运算符是( A )A) %=B) /C) =D)二27. 在C语言程序中,表达式8/5的结果是(B )A)1.6B)1C)3D)028. 设x为int型变量,那么
9、执行以下语句后,x的值为B_x=10; x+=x;A) 10 B) 20 C) 40 D) 3031. 在C语言程序中,表达式5%2的结果是C_A) 2.5B)2C)1D)332. 如果int a=3,b=4 ;那么条件表达式"a<b? a:b"的值是_A_A) 3 B) 4 C) 0 D) 133. 假设int x=2,y=3,z=4那么表达式x<z?y:z的结果是(B ).A)4 B)3C)2D)0 E)134. C语言中,关系表达式和逻辑表达式的值是 B 37.下面(D )表达式的值为4.A) 11/3C) (float)11/3B)D) (in t)(1
10、1.0/3+0.5) int x=5,y=5,z=5A .0 B. 1字母A的c2='A'+'6'-3;A) 68 B)*39.C. 540.ASCII;执行语句D. 6码为十进制数x%=y+z后,x的值是(C )后,c2中的值为 D C)41 .以下关于C语言的表达错误的选项是65,且c2为字符型,那么执行语句(B )错误 D) d'A A) 大写字母和小写字母的意义相同B) 不同类型的变量可以在一个表达式中C) 在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型D) 同一个运算符号在不同的场合可以有不同的含义42. 有:int w=11,x=
11、12,y=3,m;执行下面语句后 m的结果是(C )m=(w<x)?w:x;m=(m<y)?m:y;A. 1 B. 2 C. 3 D.以上结果都不对43. 有:int w=7, x=12, y=3, m;执行下面语句后 m的值是(A )m=(w>x)?w:x;m=(m>y)?m:y;A. 12 B. 0 C. 3 D. 145.设整型变量a=2,那么执行以下语句后,浮点型变量b的值不为0.5的是BB. b=(float)(1/a)C. b=1/(float)a D.b=1/(a*1.0)48. 以下运算符中优先级最高的运算符是B A)&& B)+C)+=
12、D)!=49. 假设 “ int n; float f=13.8; ,那么执行 “ n=(int)f%3 后,n 的值是AA.1B.4C.4.52. 设x为int型变量,那么执行以下语句后,x的值为Cx=10; x*=x;A) 10 B) 20 C) 100 D) 053. 假设有语句 int a=1,b; double y=2.3; b=(int)y;贝U b 的值为(B )A) 3 B) 2 C54. int x;char y;那么下面错误的scanf函数调用语句为(B )A)scanf( “%d,%d,&x,&y);B) scanf(“%d,%C ,x,y)C) scan
13、f( “d%d,&x,&y)D) scanf( “%d,%c,&x,&y)57.在C语言的库函数中,可以输出char型变量x值的语句是CA)getchar(x); B)fputc(x) C)putchar(x) D)puts(x)60. 以下说法正确的选项是CA) 'x'+5是一个错误的表达式B) C语言不允许类型的混合运算C) 强制类型转换时,类型说明符必须加括号D) intx+y和int x+y是完全等价的表达式61. 设 int x=0, y=1; 表达式(x|y)的值是 BA) 0 B) 1 C) 2 D) -1三、选择结构1. 在C语言
14、中,认为( D )为逻辑"真"A) true B 丨大于0的数 C丨非0整数D丨非0的数2. 表示关系x<=y<=z的c语言表达式为AA) (x<=y)&&(y<=z) B) (x<=y)AND(y<=z)C) (x<=y<=z)D) (x<=y)&(yv=z)3. 能正确表示逻辑关系:“a> =10或a<0的C语言表达式是( D )A) a>=10 or a<=0 B) a>=0|a<=10C) a>=10 &&a<=0 D) a&
15、gt;=10 II a<=04. 判断char型变量c1是否为大写字母的表达式为D。A、 A v=c1<=' ZB、(c1>=' A' ) & (c1<= ' Z')C、' A' v=c1AND ( Z' >=c1) D、c1>= ' A' && c1<= ' Z'5. 为表示逻辑表达式79<X<90,应使用的C语言表达式是 AA)( X>79 )&&( X<90 ) B) ( X>79
16、)!=( X<90 )C) 79<X<90D) (X>79 )|( X<90 )6. 设有语句“ int a=2,b=3,c=-2,d=2; ,那么逻辑表达式“ a>0&&b&&c<0&&d>0的值是AC.-110v av 15的C语言表达式是A.1B.0A 、13 B、12 C 、11 D 、10A.10<a<15C. a>10&&a<15B.a=11|a=12|a=13|a=14D.!(a<=10)&&!(a>=15)7.设a为
17、整型变量,那么不能正确表达数学关系A 8.设x,t均为int型变量,那么执行语句“x=10;t=x&&x>10; 后,t的值为DA.不定值B.10C9.假设int i=10;执行以下程序后,变量i的正确结果是A switch ( i) case9:i+=1;case10:i+=1;case11:i+=1;default :i+=1; 10. 在下面的条件语句中其中s1和s2表示是C语言的语句,只有一个在功 能上与其它三个语句不等价,它是D。A 、 if (a) s1 ; else s2;B、 if (a= =0) s2; else s1;C、if (a!=0) s1; e
18、lse s2; D、if (a= =0) s1; else s2;11. 假定所有变量均已正确定义,那么以下程序段运行后y的值是Aint a=0,y=10;if(a=0) y-;else if(a>0) y+;else y+=y;A.20B.11C12. 假定所有变量均已正确定义,那么以下程序段运行后x的值是B 。a=b=c=0; x=35; if(!a) x-;else if(b);if(c) x=3;else x=4;A.34B.413. C语言对嵌套if语句的规定是:else语句总是与D配对。A) 其之前最近的if B)第一个ifC)缩进位置相同的if D)其之前最近的且尚未配对的
19、if14. 在C语言语句中,用来决定分支流程的表达式是 A。15. C语言中用B丨表示逻辑“真。A. true B.整数值1C.非零整数值D. false16. 假设k是int型变量,且有下面的程序段:int k;k= -3;if (k<=0) printf(“#);else printf( “ &&&& );上面程序段的输出结果是 AA # B 、&&&&C #&&&&D 、有语法错误,无输出结果17. mai n() int x=0,a=0,b=0;switch(x)case 0: b+;
20、case 1: a+;case 2: a+;b+;printf( “an,a,b);该程序的输出结果是A) a=2,b=1 B) a=1,b=1 C) a=1,b=0 D) a=2,b=218. 以下程序的输出结果是:C mai n()int x=-10,y= 1,z=1;if(x<y)if(y<0) z=0;else z=z+1;printf(“ dn ,z);A. 0 B. 1 C. 2 D. 319. 以下程序段的输出结果是 B int a=10,b=50,c=30;if(a>b)a=b;b=c;c=a;prin tf("a=%2d b=%2d c=%2dn&
21、quot;,a,b,c);A) a=10 b=50 c=10B) a=10 b=30 c=10C) a=50 b=30 c=10D) a=50 b=30 c=50四、循环结构*1.在C语言中,以下说法中正确的选项是 D。A) do-while语句构成的循环不能用其它语句构成的循环来代替。B) do-while语句构成的循环只能用 break语句退出。C) do-while语句构成的循环在while后的表达式非零时结束循环。D) do-while语句构成的循环,在while后的表达式为零时结束循环。2. break语句不能出现在D语句中A. switch B.for C. while D. if
22、else*3 .对于break语句和continue语句的说法错误的选项是BA) break语句不能用于循环语句和 switch语句之外的任何其他语句中。B) break和continue也可以用于if语句中C) con ti nue 语句只结束本次循环,而不是终止整个循环的执行。D) break语句是结束整个循环过程,不再判断执行循环的条件是否成立。4. 语句while! y;中的表达式! y等价于 AA)y = = 0 B)y != 1 C)y = !0 D) y=15. 假设有“ int a=1,x=1; ,那么循环语句“ while(a<10) x+; a+; 的循环执行 AA.
23、无限次B.不确定次次次6. 有以下程序段int k=0while(k)k+;那么while循环体执行的次数是CA)无限次B)有语法错,不能执行C) 一次也不执行D)执行1次7. 以下循环语句中有语法错误的选项是(D )A while(x=y) 5; B while(O);C do 2 ; while(x= =b); D do x+ while(x= =10);9. 以下程序段(A )x=-1;do x=x*x; while(x>0);A.是死循环B.循环执行一次C.循环执行二次D.有语法错误10. 下面程序段执行后的结果为:(B )int sum=0, n=10;do sum=sum+n
24、;n+; while( n<10)printf( “d,%d ,sum,n)A. 0, 10 B. 10, 11 C. 0, 11 D.以上结果都不对11. 对以下程序段的表达正确的选项是A .int x=1;do x= -1*x; while(!x)A)是死循环B)循环执行一次C)循环执行二次D)有语法错误12. 循环“ for(i=0,x=1;i=10&&x>0;i+);的循环执行A。13. 执行语句for(j=0;jv=3;j+) a=1; 后变量j的值是C .A)0 B) 3C)4 D) 114. 有如下程序mai n() int i,sum=2;for(i
25、=1;i<=3;i+=2) sum+=i;printf( “d n ,sum); 该程序的执行结果是A) 6B) 3C)死循环 D) 4五数组1. 以下对一维数组a的正确说明是: _DA) char a 10;B) int a;C)int k = 5, ak ; D char a3=a' , ' b' , ' c' ;2. 以下能对一维数组a进行初始化的语句是:( C )A. int a5=(0,1,2,3,4,) B. int a(5)=C. i nt a3=0,1,2 D. i nt a5=10*13. 在C语言中对一维整型数组的正确定义为_D
26、。A)int a(10); B)i nt n=10,a n;C)i nt n ;a n;D)#defi ne N 10int aN;4. :int a10; 那么对a数组元素的正确引用是D A、a10 B、a3.5 C、a(5) D、a05. 执行下面的程序段后,变量k中的值为_CA) 不定值 B) 33 C) 30 D) 10 int k=3, s2;s0=k; k=s0*10;*6.以下说法中错误的选项是C A构成数组的所有元素的数据类型必须是相同的B用指针法引用数组元素允许数组元素的下标越界C 一维数组元素的下标依次是1、2、3D定义数组时的长度可以是整型常量表达式B 。7. 假设有以下
27、数组说明,贝擞值最大的和最小的元素下标分别是int a12=1,2,3,4,5,6,7,8,9,10,11,12;A.1,12B.0,11C.1,11D.0,128. 假设有以下数组说明,那么i=10;aai元素数值是B。9.假疋int类型变量占用两个子节,其有定义:int x10=0,2,4;,那么数组x在内存中所占字节数是DA) 3B) 6C) 10D) 20那么数组a的第一维的大int a12=1,4,7,10,2,5,8,11,3,6,9,12;11. 假设有说明:int a3=1,2,3,4,5,6,7; 小为:(B)A. 2 B. 3 C12. 以下定义语句中,错误的选项是(D )
28、A) int a=1,2;B) char *a;C) char s 10=“ test ; D) int n=5,an;13. 下面程序段的输出结果是:(C )int i;int x33=1,2,3,4,5,6,7,8,9;for (i=0;i<3;i+)prin tf("%d ",xi2-i);A) 1 5 9 B) 1 4 7 C) 3 5 7 D) 3 6 914. 对二维数组的正确定义是CA.int a =1,2,3,4,5,6; B.int a2 =1,2,3,4,5,6;C.int a 3=1,2,3,4,5,6; D.int a2,3=1,2,3,4,5
29、,6;15. int a34;那么对数组元素引用正确的选项是CA)a24B)a1,3 C)a20D)a (2)(1)六、函数1. C语言中函数返回值的类型是由A 决定的.A函数定义时指定的类型B retur n语句中的表达式类型C调用该函数时的实参的数据类型D形参的数据类型2. 在C语言中,函数的数据类型是指A A函数返回值的数据类型B.函数形参的数据类型A.由系统选择B.单向值传递 C.由用户指定传递方式D.地址传递5.在函数调用时,以下说法正确的选项是 B AA构成C程序的根本单位是函数B可以在一个函数中定义另一个函数Cmain函数必须放在其它函数之前D所有被调用的函数一定要在调用之前进行
30、定义10. 用数组名作为函数调用时的实参时,传递给形参的是 AA数组首地址B数组第一个元素的值C数组全部元素的值D数组元素的个数*16.以下说法中正确的选项是:A A.局部变量在一定范围内有效,且可与该范围外的变量同名B. 如果一个源文件中,全局变量与局部变量同名,那么在局部变量范围内, 局部变量不起作用。C. 局部变量缺省情况下都是静态变量。D. 函数体内的局部静态变量,在函数体外也有效。17.在C语言中,表示静态存储类别的关键字是:C A) autoB) register C) staticD) extern18 未指定存储类别的变量,其隐含的存储类别为A。A)auto B)static
31、C)exter n D)register八.指针1. 语句 int *p;说明了C _。A) p是指向一维数组的指针B) p是指向函数的指针,该函数返回一 int型数据C) p是指向int型数据的指针D) p是函数名,该函数返回一指向int型数据的指针2. 变量的指针,其含义是指该变量的:(B )3. 假设x是整型变量,pb是基类型为整型的指针变量,那么正确的赋值表达式是(A )A) pb=&x B) pb=x C) *pb=&xD) *pb=*x4. :int a, *p=&a;那么以下函数调用中错误的选项是 D丨。A、scanf(“ %d ,&a);B、sc
32、anf(“%d ,p);C、printf(“%d ,a);D、printf(“ %d ,p);5. 对于同类型的指针变量,不可能进行的运算是C。A.-B.=C.+D.=6. 对于基类型相同的两个指针变量之间,不能进行的运算是CA) < B) = C) +D)-7. 以下不正确的定义是A 。A. int *p=&i,i;B.int *p,i;C. int i,*p=&i;D.i nt i,*p;8. 假设有说明:intn=2,*p=&n,*q=p,那么以下非法的赋值语句是Ap=q B*p=*q C n=*q D p=n9. int *p,a=10,b=1; p=&a
33、mp;a; a=*p+b;执行该程序段后,a的值为 CA)编译出错 B) 10 C) 11D) 1210有语句:int a10,;那么_B是对指针变量p的正确定义和初始化。A)in t p=*a; B)i nt *p=a; C)i nt p=&a; D)i nt *p=&a;11. 假设有说明语句“ int a5,*p=a; ,那么对数组元素的正确引用是(C)。A.apB.paC.*(p+2)D.p+212. 假设指针变量p指向整型数组a10的首地址,即p=a ;那么以下数组元素ai(0<i<10)的表示方法中正确的选项是:CA. p+i B.&( a+i)
34、 C. *(a+i) D. *(p+i*2)13. 有如下程序int a10=1,2,3,4,5,6,7,8,9,10,*P=a;那么数值为9的表达式是_BA) *P+9 B) *(P+8) C) *P+=9 D) P+816. 假设有以下说明:int a10=1,2,3,4,5,6,7,8,9,10,*p=a;那么数值为4的表达式是(C )A) *p+4B) *(p+4) C) *(p+3) D) p+319以下函数的功能是 A。void fun(int *p1,i nt *p2) in t p;p=*p1;*p1=*p2;*p2=p;A)交换*p1和*p2的值 B)语法正确,但无法交换*p
35、1和*p2的值C)交换*p1和*p2的地址 D)有语法错误九、字符串1. 在C语言中,以 _匚 作为字符串结束标志A)' n ' B) ''C) ' 0' D) ' 0 '2. 以下数据中属于“字符串常量的是A。A>aB.ABC C.abc03. 字符串“ABCD在内存占用的字节数是D A. 4B. 6C. 1D. 54. 下面不正确的字符串常量是:AA. 'PROGRAM B12“0D5. 设有数组定义:char array ="abcd"那么数组array所占的空间为 _BA) 4个字节 B)
36、 5 个字节 C) 6 个字节 D) 7 个字节7. char x="hello", y='h','e','a','b','e',那么关于两个数组长度的正确描述是_B .A)相同 B)x 大于y C)x 小于y D)以上答案都不对8. 给出以下定义:char x ="abcdefg"char y ='a','b','c','d','e','f,'g'那么正确的表达为_C_数
37、组x和数组y的长度相同A)数组x和数组y等价B)C)数组x的长度大于数组y的长度9、假设有以下语句,那么正确的描述是 static char x = 12345D) 数组x的长度小于数组y的长度 D 。static char y ='1' , 2' , 3' , 4' , 5 ' , ' 0 ' ;A、x数组长度大于y数组长度B、x数组和y数组不相同C、x数组长度小于y数组长度 D、x数组等价于y数组 10、:char s20= programming , *ps=s;那么不能引用字母o的表达式是C A、ps2 B、s2 C、ps+2 D、ps+=2, *ps13. 对字符数组s赋值,不合法的一个是(C )A. char s="Beiji ng";B. char s20="beiji ng" ;C. char s20; s="Beijing";D. char s20='B','e',
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 企业管理-彩超室管理制度
- 江苏省通州区金郊初级中学2026届初三下学期第一次统一考试(1月)物理试题含解析
- 湖北省武汉市武昌区八校2025-2026学年初三一模考试物理试题理试题含解析
- 广东汕尾甲子镇瀛江校2025-2026学年初三5月模拟(一模)考试数学试题含解析
- 珠海市紫荆中学2025-2026学年中考物理试题原创模拟卷(三)含解析
- 湖南省常德市鼎城区2026年初三第二次教学质量监测(数学试题理)试题含解析
- 车灯的日常维护与清洁
- 护理安全:防范不良事件
- 血小板减少患者的护理流程
- 审计局妇女之家活动制度
- 2025年高级(三级)中式烹调师(中式烹调)《理论知识》真题卷(答案和解析附后)
- 人工智能训练师培训课件
- 铝电解工(铝电解操作工)职业资格(技师)考试题库-上(单选题)
- 水电站大坝安全现场检查技术规程 -DL-T 2204
- 水产加工厂管理制度
- 重庆市制造业领域吸纳高校毕业生急需紧缺岗位目录(2024-2025)征
- 《食品安全监测与风险评估》课件
- 硫磺购销合同协议
- 课件:《习近平新时代中国特色社会主义思想学习纲要(2023年版)》第八章 中华人民共和国的成立与中国社会主义建设道路的探索
- 《明清中国版图的奠定与面临的挑战》单元教学设计- 近代前夜的盛世与危机
- 人员退休欢送会34
评论
0/150
提交评论