第一章 单元测试
1、判断题:C语言可以应用到硬件编程中。
A:对
B:错
正确答案:【对】
2、判断题:C语言的编译软件只有一种。
A:对
B:错
正确答案:【错】
3、单选题:2011年,ISO正式公布C语言新的国际标准,称为( )标准。
A:C11
B:C99
C:C89
D:C90
正确答案:【C11】
4、单选题:C语言源文件的扩展名为( )。
A:.c
B:.exe
C:.cpp
D:.obj
正确答案:【.c】
5、单选题:C语言之父是( )?
A:比尔盖茨
B:肯.汤普逊
C:马云
D:丹尼斯.里奇
正确答案:【丹尼斯.里奇】
6、判断题:一个 C 程序可以包含若干函数,但必须有主函数。
A:对
B:错
正确答案:【对】
7、判断题:C程序中可以自定义函数。
A:错
B:对
正确答案:【对】
8、判断题:C语言的源文件的扩展名为.c。
A:错
B:对
正确答案:【对】
9、判断题:一个C程序可以有多个主函数。
A:对
B:错
正确答案:【错】
10、判断题:一个C程序可以没有主函数。
A:对
B:错
正确答案:【错】
11、判断题:在标准C中,语句必须以“;”结束。
A:对
B:错
正确答案:【对】
12、判断题:C程序的一行只能写一条语句。
A:对
B:错
正确答案:【错】
13、单选题:#include
int main()
{
printf(“Hello,World!”);
return 0;
}
以上C语言程序的功能是( )。
A:
输出字符串:World!
B:
输出字符串:Hello
C:
输出字符串:Hello,World!
D:
输入字符串
正确答案:【
输出字符串:Hello,World!
】
14、单选题:C语言语句以( )结束。
A:
;
B:
.
C:
,
D:
:
正确答案:【
;
】
15、单选题:包含头文件stdio.h正确的表示是( )。
A:
#include《stdio.h》
B:
include
C:
include《stdio.h》
D:
#include
正确答案:【
#include
】
16、单选题:#include的功能是( )。
A:包含头文件stdio.h
B:定义变量stdio.h
C:定义stdio.h是头文件
D:输出字符串:stdio.h
正确答案:【包含头文件stdio.h】
17、判断题:C语言主函数名必须是main。
A:错
B:对
正确答案:【对】
18、单选题:以下哪个不是C语言的编译软件?
A:Visual C++2010 express
B:Visual C++6.0
C:MS Office2010
D:DEV C++
正确答案:【MS Office2010】
19、判断题:只有计算机专业的学生才用学习C语言,其他专业学C语言一定没用。
A:对
B:错
正确答案:【错】
20、单选题:printf(“***n***n***”);语句的功能是( )。
A:输出一行,包含九个*
B:输出三行,每行包含三个*
C:输出九行,每行包含一个*
D:输出一行,包含三个*
正确答案:【输出三行,每行包含三个*】
第二章 单元测试
1、单选题:已知字母A的ASCII码是65,以下程序段的输出的结果是( )。
char c1=’A’,c2=’Y’;
printf(“%d,%d”,c1,c2);
A:65,90
B:A,Y
C:65,65
D:65,89
正确答案:【65,89】
2、单选题:有以下程序段:char c1,c2;
c1=’A’+’8′-‘4′;
c2=’A’+’8’-‘5′;
printf(“%c,%d”,c1,c2);
已知字母A的ASCII码为65,程序运行后的输出结果是( )。
A:E,68
B:D,69
C:输出无定值
D:E,D
正确答案:【E,68】
3、单选题:以下选项中可用作C程序合法实数的是( )。
A:.1e0
B:3.0e0.2
C:9.12E
D:E9
正确答案:【.1e0】
4、单选题:有以下定义语句,编译时会出现编译错误的是( )。
A:
char a=’aa’;
B:
char a=’a’;
C:
char a=’-‘;
D:
char a=”;
正确答案:【
char a=’aa’;
】
5、判断题:float和double都是定义浮点类型的关键字。
A:错
B:对
正确答案:【对】
6、单选题:可在C程序中用作用户标识符的一组标识符是( )。
A:case Big1
B:
Date y-m-d
C:
and _2007
D:
Hi Dr.Tom
正确答案:【
and _2007
】
7、单选题:以下选项中表示一个合法的常量是( )。
A:0Xab
B:123E0.2
C:2.7e
D:2/3
正确答案:【0Xab】
8、判断题:已知:int a=5; 那么逗号表达式:a+3,a=a/2,a+4的值为8。
A:错
B:对
正确答案:【错】
9、单选题:若有定义语句:int x=12,y=8,z; ,在其后执行语句z=0.9+x/y;,则z的值为( )。
A:
1
B:
2
C:
1.9
D:
2.4
正确答案:【
1
】
10、单选题:若有定义语句:int a=10;double b=3.14; ,则表达式 ‘A’+a+b 值的类型是( )。
A:
char
B:
float
C:
double
D:
int
正确答案:【
double
】
11、单选题:设有定义:int x=2; ,以下表达式中,值不为6的是( )。
A:
x++,2*x
B:
x=x*(1+x)
C:
2*x,x+=2
D:
x*=x+1
正确答案:【
2*x,x+=2
】
12、单选题:若有定义语句:int x=10; ,则表达式x – = x + x的值为( )。
A:
10
B:
-20
C:
–10
D:
0
正确答案:【
–10
】
13、单选题:以下程序段的输出结果是( )。
int a=10,b=10;
printf(“%d,%d”,a–,–b);
A:
10,9
B:
10,10
C:
9,9
D:
9,10
正确答案:【
10,9
】
14、单选题:若变量已正确定义并赋值,符合C语言语法的表达式是( )。
A:
a=7+b+c,a++:b*c
B:
int(12.3/5)
C:
a=a+7
D:
a=a+1=c+b
正确答案:【
a=a+7
】
15、单选题:若变量均已正确定义并赋值,以下合法的C语言赋值语句是( )。
A:
x=y=5;
B:
x+n=i;
C:
x=n%2.5;
D:
x=5=4+1;
正确答案:【
x=y=5;
】
16、单选题:若有定义:double a=22;int i=0,k=18; ,则不符合C语言规定的赋值语句是( )。
A:
a=a++,i++;
B:
i=!a;
C:
i=(a+k)<=(i+k);
D:
i=a%11;
正确答案:【
i=a%11;
】
17、判断题:int a=3; 那么a++的值为4。
A:错
B:对
正确答案:【错】
18、判断题:int a=3,b=4;那么(a+b)++的值为7。
A:错
B:对
正确答案:【错】
19、判断题:b*=a+3等价于b=b*(a+3)。
A:对
B:错
正确答案:【对】
20、判断题:定义符号常量N为3.14可以用语句:#define N=3.14
A:错
B:对
正确答案:【错】
第三章 单元测试
1、单选题:有以下程序,若输入d,则输出结果为( )。(注:字母a的ASCII码是97)
#include
int main( )
{
char c,d;
c=getchar();
d=c-33;
printf(“%d,%c”,c,d);
return 0;
}
A:
99,C
B:
100,D
C:
100,C
D:
100,c
正确答案:【
100,C
】
2、单选题:以下不能输出字符a的语句是( )。
A:
printf(‘%c’,’A’+32);
B:
printf(‘%c’,97);
C:
printf(‘%c’,’a’-1);
D:
printf(‘%d’,’a’);
正确答案:【
printf(‘%d’,’a’);
】
3、判断题:命令putchar(97)的执行结果为:97。
A:错
B:对
正确答案:【错】
4、判断题:命令putchar(’98’)的执行结果为:98。
A:对
B:错
正确答案:【错】
5、单选题:若变量已正确定义为int型,要通过语句scanf(“%d,%d,%d”,&a,&b,&c);给a赋值1,给b赋值2, 给c赋值3, 以下输入形式中错误的是( )。(注:下列选项中□表示一个空格。)
A:
1□2□3<回车>
B:
1,□□□2, □□□3<回车>
C:
□□□1,2,3<回车>
D:
1,2,3<回车>
正确答案:【
1□2□3<回车>
】
6、单选题:有以下程序
#include
int main( )
{
int a1,a2;char c1,c2;
scanf(“%d%c%d%c”,&a1,&c1,&a2,&c2);
printf(“%d,%c,%d,%c”,a1,c1,a2,c2);
return 0;
}
若想通过键盘输入,使得a1的值为12,a2的是为34,c1的值为字符a,c2的值为字符b,程序输出结果是:12,a,34,b,则正确的输入格式是( )(注:□表示一个空格)
A:
12,a,34,b
B:
12a34b
C:
12□a□34□b
D:
12□a34□b
正确答案:【
12a34b
】
7、单选题:根据下面的程序及数据的输入方式和输出形式,程序中输入语句的正确形式应该为( )。
#include
int main( )
{
char ch1,ch2,ch3;
输入语句
printf(‘%c%c%c’,ch1,ch2,ch3);
return 0;
}
输入形式: A□B□C
输出形式: A□B
(注:□表示一个空格)
A:
scanf(‘%c%c%c’,&ch1,&ch2,&ch3);
B:
scanf(‘%c,%c,%c’, &ch1,&ch2, &ch3);
C:
scanf(‘%c%c’,&ch1,&ch2,&ch3);
D:
scanf(‘%c□%c□%c’,&ch1,&ch2,&ch3);
正确答案:【
scanf(‘%c%c%c’,&ch1,&ch2,&ch3);
】
8、单选题:#include
int main( )
{
int a=1,b;
scanf(‘%2d%2d’,&a,&b);
printf(‘%d*%d’,a,b);
return 0;
}
以上程序段,如果输入是12345 6,则输出是( )。
A:12*45
B:12345*6
C:12*6
D:123*345
正确答案:【12*45】
9、判断题:对于scanf(‘%3d%f’,&a,&b);若输入123456.789,则a=123,b=456.789
A:对
B:错
正确答案:【对】
10、单选题:已知字母A的ASCII码是65,以下程序的执行结果是( )。
#include
int main( )
{
char c1=’A’;
printf(‘%d’,c1+3);
return 0;
}
A:
67
B:
65
C:
66
D:
68
正确答案:【
68
】
11、单选题:阅读以下程序,当输入数据的形式为:25,13,10 ,正确的输出为( )。
#include
int main( )
{
int x,y,z;
scanf(‘%d,%d,%d’,&x,&y,&z);
printf(‘x+y+z=%d’,x+y+z);
return 0;
}
A:
x+y+z=48
B:
x+z=35
C:
不确定值
D:
x+y+z=35
正确答案:【
x+y+z=48
】
12、单选题:已知字母A的ASCII码是65,以下程序的执行结果是( )。
#include
int main( )
{
char c1=’A’,c2=’Y’;
printf(‘%d,%d’,c1,c2);
return 0;
}
A:
A,Y
B:
65,90
C:
65,89
D:
65,65
正确答案:【
65,89
】
13、单选题:下列程序的输出结果是( )。
int main( )
{
double d=3.2;
int x,y;
x=1.2;
y=(x+3.8)/5.0;
printf(‘%d’,d*y);
return 0;
}
A:
3
B:
3.07
C:
0
D:
3.2
正确答案:【
0
】
14、单选题:下列语句输出结果是( )。
int a=1,b=1,c=1;
a=a+b+c;
printf(‘%d’,a);
A:
6
B:
4
C:
5
D:
3
正确答案:【
3
】
15、单选题:有以下程序
#include
int main( )
{
char c1,c2;
c1=’A’+’8′-‘4′;
c2=’A’+’8’-‘5’;
printf(‘%c,%d’,c1,c2);
return 0;
}
已知字母A的ASCII码为65,程序运行后的输出结果是( )。
A:
E,D
B:
输出无定值
C:
A.E,68
D:
D,69
正确答案:【
A.E,68
】
16、单选题:有以下程序, 程序运行后的输出结果是( )。
#include
void main()
{
int a=1,b=0;
printf(‘%d,’,b=a+b);
printf(‘%d’,a=2*b);
}
A:
1,0
B:
1,2
C:
3,2
D:
0,0
正确答案:【
1,2
】
17、单选题:有以下程序:
#include
void main()
{ int x=10,y=3;
printf(‘%d’,y=x/y);
}
执行后的输出结果是( )。
A:
3.333333
B:
4
C:
3
D:
0
正确答案:【
3
】
18、单选题:以下不能输出字符A的语句是( )。(注:字符A的ASCII码值为65,字符a的ASCII码值为97)
A:
printf(‘%c’,’B’-1);
B:
printf(‘%d’,’A’);
C:
printf(‘%c’,’a’-32);
D:
printf(‘%c’,65);
正确答案:【
printf(‘%d’,’A’);
】
19、单选题:有以下程序段
char ch;
int k;
ch=’a’;
k=12;
printf(‘%c,%d,’,ch,ch);
printf(‘k=%d’,k);
已知字符a的ASCII码值为97,则执行上述程序段后输出结果是( )。
A:
a,97,k=12
B:
97,97,k=12
C:
a,a,12
D:
a,97,12
正确答案:【
a,97,k=12
】
20、判断题:复合语句用{}括起来。
A:对
B:错
正确答案:【对】
第四章 单元测试
1、单选题:void main( )
{ int a,b,min;
scanf(“%d,%d”,&a,&b);
if(a>b)________;
else ________;
printf(“%d”,min); }
该程序的功能是输入两个整数赋值给变量a和b,求较小的数并输出,程序中的两处下划线处应该分别填写( )。
A:
b=a 和 min=a
B:
min=b 和 min=a
C:
a=b 和 min=b
D:
min=a 和 min=b
正确答案:【
min=b 和 min=a
】
2、单选题:运行以下程序后,输出( )。
void main()
{ int k=-3;
if(k<0) printf(‘**** ‘)
else printf(‘&&&& ‘);
}
A:
####&&&&
B:
&&&&
C:
****
D:
有语法错误,else上面一行缺少分号
正确答案:【
有语法错误,else上面一行缺少分号
】
3、单选题:void main( )
{ int a,b,t;
scanf(“%d,%d”,&a,&b);
if(a>b){t=a;____________;b=t;}
printf(“%d”,min); }
该程序的功能是输入两个整数赋值给变量a和b,按由小到大顺序输出,下划线处应该填入( )。
A:
b=t
B:
t=b
C:
a=b
D:
a=t
正确答案:【
a=b
】
4、单选题:下程序的功能是判断输入的一个整数是否能被3或7整除,若能整除,输出YES,否则输出NO。在下划线处应填入的选项是( )
#include
void main()
{ int k;
printf(‘Enter a int number : ‘); scanf(‘%d’, &k);
if ________ printf(‘YES’);
else printf(‘NO’);
}
A:
(k/3==0) || (k/7==0)
B:
( (k%3==0)&&(k%7==0) )
C:
( (k%3==0) || (k%7==0) )
D:
( (k%3=0) || (k%7=0))
正确答案:【
( (k%3==0) || (k%7==0) )
】
5、单选题:以下程序段的输出结果为( )
int a=0,b=0,c=0;
if(a==b+c) printf(“*** ”);
else printf(“$$$ ”);
A:有语法错误,不能通过编译
B:可以通过编译但不能通过连接
C:输出***
D:输出$$$
正确答案:【输出***】
6、判断题:if语句中可以有else也可以没有else。
A:错
B:对
正确答案:【对】
7、判断题:else语句必须和if语句配合使用,不能单独使用。
A:错
B:对
正确答案:【对】
8、判断题:一个if语句可以与多个else语句配对。
A:对
B:错
正确答案:【错】
9、单选题:有以下程序段,输出结果为( )。
int x=6,y;
switch(x):
{
case 1: y=x; break;
case 2: y=2*x;break;
case 3: y=3*x;break;
defualt:y=-x;break;
}
printf(“%d”,y);
A:
12
B:
6
C:
18
D:
–6
正确答案:【
–6
】
10、单选题:有以下程序段,输出结果为( )。
int x=3,y;
switch(x):
{
case 1: y=x;break;
case 2: y=2*x;break;
case 3: y=3*x;break;
defualt:y=-x;break;
}
printf(“%d”,y);
A:
9
B:
6
C:
–3
D:
3
正确答案:【
9
】
11、单选题:以下关于switch语句正确的是( )。
A:switch中可以使用else
B:switch语句是循环结构语句
C:switch中多个case后的值可以相等
D:switch语句是多分支选择结构语句
正确答案:【switch语句是多分支选择结构语句】
12、单选题:有以下程序段,输出结果为( )。
int x=1,y;
switch(x):
{
case 1: y=x++;
case 2: y=x++;
case 3: y=x++;
}
printf(“%d ”,y);
A:4
B:2
C:1
D:3
正确答案:【4】
13、单选题:int x=8,y;
switch(x):
{
case 1: y=x; break;
case 2: y=2*x;break;
case 3: y=3*x;break;
defualt:y=-x;break;
}
printf(“%d ”,y);以上程序段,输出结果为( )。
A:18
B:6
C:12
D:-8
正确答案:【-8】
14、判断题:switch语句中必须要有break语句。
A:对
B:错
正确答案:【错】
15、判断题:switch语句中,case后可的各常量表达式的值不能相同,否则会出现矛盾。
A:对
B:错
正确答案:【对】
16、单选题:max=a>b?a:b; 的功能是( )。
A:
max等于b
B:
max等于a、b中较大的
C:
max等于a、b中较小的
如有任何疑问请及时联系QQ 50895809反馈