当前位置:首页 > C复习资料(无答案)new
一、选择题
1. C语言规定:在一个源程序中,main函数的位置__B_。
A. 必须在最开始。 B. 可以任意。
C. 必须在系统调用的库函数的后面。 D. 必须在最后。
2. 以下叙述正确的是__C__。
A. 在C程序中,main函数必须位于程序的最前面。 B. C程序的每行中只能写一条语句。 C. C语言本身没有输入输出语句。
D. 在对一个C程序进行编译的过程中,可以发现注释中的拼写错误。 3. 一个C程序的执行是从__D__。
A. 本程序的第一个函数开始,到本程序main函数结束
B. 本程序的第一个函数开始,到本程序文件的最后一个函数结束 C. 本程序的main函数开始,到本程序文件的最后一个函数结束 D. 本程序的main函数开始,到main函数结束
4. 下面四个选项中,均是不合法的用户标识符的选项是_C___。
A. A , P_0 , do B. float , 1a0 , _A C. b-a , goto , int D. _123 , temp , INT 5. 在C语言中(以16位PC机为例),5种基本数据类型的存储空间长度的排列为_A___。
A. char 6. C语言中的标识符只能由字母、数字和下划线3中字符组成,且第一个字符__A__。 A. 必须为字母或下划线 B. 必须为下划线 C. 必须为字母 D. 可以是字母、数字和下划线中任一种字符 7. 在C语言中,char型数据在内存中的存储形式是_A___。 A. 补码 B. 反码 C. 原码 D.ASCII码 8. 若有说明语句:char c = '\\72';则变量c__A__。 A. 包含1个字符 B. 包含2个字符 C. 包含3个字符 D. 说明不合法,c的值不确定 9. 已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'+'5'-'3';之后,c2中的字符为__D__。 A. 67 B. ?B? C. 不确定的值 D. ?C? 10.若有说明语句:int a;char b;,以下输入函数语句正确的是__C__。 A. scanf(\B. scanf(\C. scanf(\D. scanf(\ 11. 以下针对scanf函数的叙述中,正确的是_D___。 A. 输入项可以为一实型常量,如scanf(“%f”,3.5); B. 只有格式控制,没有输入项,也能正确输入,如scanf(“a=%d,b=%d”); C. 当输入一个实型数据时,格式控制部分必须规定小数点后的位数,如scanf(“%4.2f”,&f); D. 当输入数据时,必须指明变量的地址,如scanf(“%f”,&f); 12. 有定义语句:“int x, y ;”,若要通过“scanf(“%d, %d”, &x, &y ) ;”语句使变量x得到数值2,变量y得到数值6,下面四组输入形式中,错误的是__A__。( A. 2 6 13. 能正确表示“x的取值在[1, 10]范围内”的表达式是_C___。 A. (x>1)&&(x<=10) B. (x>=1)||(x<10) C. (x>=1)&&(x<=10) D. (x>=1)||(x<=10) 14. 判断char型变量ch为大写字母的正确表达式是__C__。 A. 'A'<=ch<='Z' B. (ch>='A')&(ch<='Z') C. (ch>='A')&&(ch<='Z') D. ('A'<=ch)AND('Z'>=ch) 15. 设有说明语句:int x=43,y=0; char ch=?A?; 则表达式(x>=y&&ch A. 1 B. 语法错 C. 0 D. 假 16. 以下程序_B___。 main() { int a=5, b=0, c=0; if(a==b+c) printf(\else printf(\ } A. 有语法错不能通过编译 B. 输出$$$ C. 输出*** D. 可以通过编译但不能通过连接 17. 为了避免在嵌套的条件语句if-else中产生二义性,C语言规定else子句总是与_C___配对。 A. 缩排位置相同的if B. 其之后最近的if C. 其之前最近的if D. 同一行上的if 18. 在C语言中,紧跟在关键字if后一对圆括号里的表达式是__D__。 A. 只能用逻辑表达式 B. 只能用关系表达式 C. 只能用逻辑表达式或关系表达式 D. 可以是任意表达式 19. C语言中while和do-while循环的主要区别是__D__。 A. do-while的循环体不能是复合语句 B. while的循环控制条件比do-while的循环控制条件严格 C. do-while允许从外部转到循环体内 D. do-while的循环体至少无条件执行一次 20. 设有程序段 int k=10; while(k=0) k=k-1; 则下面描述中正确的是__C__。 A. while循环执行10次 B. 循环是无限循环 C. 循环体语句一句也不执行 D. 循环体语句执行一次 21.下面程序的运行结果是__B__。 #include { int a = 1, b = 6; do { b -= a; a++; } while( b--<0); printf(\ } A. a=3, b=3 B. a=2, b=4 C. a=1, b=-1 D. a=4,b=2 22. 下面程序的运行结果是_A___。 #include for(y=9;y>0;y--) { if(y%3) { printf(\ continue; } } } A. 741 B.852 C. 963 D. 875421 23. 下面程序的运行结果是_A___。 #include for(i=1;i<=5;i++) { if(i%2) printf (“*”); else continue; printf(“#”); } printf(“$\\n”); } A. *#*#*#$ B. #*#*#*$ C. *#*#$ D. #*#*$ 24. 下面程序的功能是在输入的一批正整数中求出最大者,输入0结束循环,请选择填空。 #include { int a,max=0; scanf(\while (_A___) { if(max scanf(\ } printf(\ } A. a!=0 B. a==0 C. !a==1 D. !a 25. 下面程序段是从键盘输入的字符中统计数字字符的个数,用换行符结束循环。请选择填空。 #include while (_A___) { if (c<=?9?&&c>=?0?) n++; c=getchar(); } } A. c!=?\\n? B. c=?\\n? C. c= =?\\n? D. c 26. 以下对一维整型数组a的正确说明是__D__。 A. int a(10); B. int n=0,a[n]; C. int n; D. #define SIZE 10 scanf(“%d”,&n); int a[SIZE] int a[n]; 27. 若有定义float x[3] = { 1.3, 2.4, 5.6 }, y = 6 ;,则错误的语句是_C___。 A. y = x[2]; B. y = x[2] + 1; C. y=x+1; D. x[0]=y; 28. 若有说明:int a[10];,则对a数组元素的正确引用是_D___。 A. a[10] B. a[3.5] C. a(5) D. a[9] 29. 下面程序__C__。(每行程序前面的数字表示行号) 1 #include 4 int a[3]={0}; 5 int i; 6 for(i=0;i<3;i++) scanf(\7 for(i=1;i<4;i++) a[0]=a[0]+a[i]; 8 printf(\9 } A. 第4行有错误 B. 第6行有错误 C. 第7行有错误 D. 没有错误 30. 下面程序_B___。(每行程序前面的数字表示行号) 1 #include 4 float a[3]={0.0}; 5 int i; 6 for(i=0;i<3;i++) scanf(\7 for(i=1;i<3;i++) a[0]=a[0]+a[i]; 8 printf(\9 } A. 第4行有错误 B. 第6行有错误 C. 第7行有错误 D. 没有错误 31. 下面程序中有错误的行是_B___。(每行程序前面的数字表示行号) 1 #include 4 int a[3]={1}; 5 int i; 6 scanf(\ 7 for(i=1;i<3;i++) a[0]=a[0]+a[i]; 8 printf(\9 }
共分享92篇相关文档