第一章 单元测试
1、单选题:C语言程序是由若干( )组成的。
A:过程
B:主程序
C:子程序
D:函数
正确答案:【函数】
2、单选题:C语言中,最简单的数据类型是( )。
A:整型、字符型、逻辑型
B:整型、实型、逻辑型、字符型
C:整型、实型、逻辑型
D:整型、实型、字符型
正确答案:【整型、实型、字符型】
3、单选题:下列选项中可以作为C语言字符常量的是( )。
A:”abc”
B:13.8e
C:‘12’
D:‘M’
正确答案:【‘M’】
4、单选题:已知字母‘b’的ASCII码值为98,如ch为字符型变量,则表达式ch=‘b’+’5’–’2’的值为( )。
A:d
B:102
C:100
D:e
正确答案:【e】
5、单选题:已知各变量的定义如下:int i=8,k,a,b;unsigned long w=5;double x=1.42,y=5.2;则以下表达式中不符合C语言语法的表达式是( )。
A:y+=x++;
B:(int)x+0.4;
C:a=2*a=3;
D:k=i++;
正确答案:【a=2*a=3;】
6、单选题:下列四个选项是对变量和常量的特点的叙述,正确的说法是( )。
A:C89规定所有变量必须在第一条可执行语句前定义。
B:不同类型的变量分配的存储空间大小都是相同的。
C:在C语言中,所有变量都必须在定义时进行初始化。
D:宏常量有数据类型,编译器在宏替换时可以进行类型检查。
正确答案:【在C语言中,所有变量都必须在定义时进行初始化。】
7、单选题:设有语句“int a = 3;”,执行语句“a += a -= a * a;”后,变量a的值是( )。
A:0
B:-12
C:9
D:3
正确答案:【-12】
8、单选题:在C语言中对下面的语句而言,哪个说法是错误的( )? int a, b;
A:a和b都是整型变量
B:变量a和b占用的内存空间的大小是相同的
C:变量a和b中的值都是未知的随机数
D:变量a和b中都没有数值
正确答案:【变量a和b中都没有数值】
9、单选题:设有如下定义:int x=1,y=-1;则语句:printf(“%d”,x–+(++y));的输出结果是( )。
A:0
B:2
C:-1
D:1
正确答案:【1】
10、单选题:执行下面程序时,欲将25和2.5分别赋给a和b,正确的输入方法是( )。int a;float b; scanf(“a=%d,b=%f”,&a,&b);
A:a=25 b=2.5
B:a=25,b=2.5
C:25 2.5
D:25,2.5
正确答案:【a=25,b=2.5】
第二章 单元测试
1、单选题:若有整型变量i、j,则以下程序段中内循环体的执行次数为( )。for(i=1;i<=5;i++)for(j=0;j<4;j++){……}
A:20
B:30
C:24
D:25
正确答案:【20
】
2、单选题:
判断char型变量ch是否为大写字母的正确表达式是( )。
A:(ch>=’A’)&&(ch<=’Z’)
B:(‘A'<=ch)AND(‘Z’>=ch)
C:(ch>=’A’)&(ch<=’Z’)
D:’A'<=ch<=’Z’
正确答案:【(ch>=’A’)&&(ch<=’Z’)】
3、单选题:以下程序段的输出结果是( )。main(){ int x=5; if(x++>5) printf(“%d”,x); else printf(“%d”,x–);}
A:6
B:5
C:4
D:7
正确答案:【6】
4、单选题:设所有变量均已正确定义,并且已知a=4,b=3,c=2,d=1,则表达式d=a<b?a:c的结果是( )。
A:1
B:2
C:4
D:3
正确答案:【2
】
5、单选题:
当a=1、b=3、c=5、d=4时,执行以下程序段后x的值是()。
A:3
B:2
C:6
D:1
正确答案:【2】
6、单选题:如下程序
main()
{ int x=1,a=O,b=O;
switch(x)
{ case 0:b++;
case 1:a++;
case 2:a++;b++;
}
printf(“a=%d,b=%d”,a,b);
}
该程序的输出结果是( )。
A:a=2,b=1
B:a=1,b=0
C:a=1,b=1
D:a=2,b=2
正确答案:【a=2,b=1】
7、单选题:下面程序段int k=2;while(k=0){printf(“%d”,k);k–}则下面描述中正确的是( )。
A:循环体语句执行一次
B:循环体语句一次也不执行
C:循环体无限循环
D:while循环执行10次
正确答案:【循环体语句一次也不执行】
8、单选题:以下程序中while循环的循环次数为( )。main(){ int i=0; while(i<10) { if(i<1) continue; if(i==5) break; i++; } }
A:1
B:6
C:死循环,不确定次数
D:10
正确答案:【死循环,不确定次数】
9、单选题:假定a和b均为int型变量,则执行以下语句后b的值为( )。a=1; b=10;do{ b-=a; a++; } while(b–<0);
A:-1
B:9
C:-2
D:8
正确答案:【8】
10、单选题:在语句while(!E); 括号中的表达式!E等价于( )。
A:E==1
B:E!=0
C:E==0
D:E!=1
正确答案:【E==0】
第三章 单元测试
1、单选题:若有定义int a[10];则数组元素的下标的下限和上限分别是( )。
A:0和1
B:1和9
C:0和9
D:1和10
正确答案:【0和9】
2、单选题:定义如下变量和数组,则下列程序段的输出结果是( )。int i,x[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++) if(i%2!=1)printf(“%d”,x[i][i]);
A:19
B:39
C:17
D:37
正确答案:【19
】
3、单选题:下面一段程序是有关字符串操作的,该段程序的输出结果是( )。#include <stdio.h>#include <string.h>main(){ char p1[10]=”abc”,p2[]=”ABC”; strcat(p1,p2); printf(“%s”,p1);}
A:abcABC
B:abc
C:abcabc
D:ABC
正确答案:【abcABC
】
4、单选题:下列四个选项中能正确定义一维数组的语句是( )。
A:int num[0…2017];
B:int N=2017; int num[N];
C:#define N 2017
int num[N];
D:int num[ ];
正确答案:【#define N 2017
int num[N];
】
5、单选题:若有以下说明,则数值为4的表达式是( )。int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};char c=’a’,d,g;
A:a[4]
B:a[‘d’-c]
C:a[g-c]
D:a[‘d’-‘c’]
正确答案:【a[‘d’-c]
】
如有任何疑问请及时联系QQ 50895809