第一章 单元测试
1、单选题:
C语言程序扩展名为 .exe,它属于【 】
选项:
A:源程序文件
B:可执行文件
C:目标文件
D:库文件
答案: 【可执行文件】
2、单选题:
在绘制程序流程图时,表示“输入输出框”的符号是【 】
选项:
A:
B:
C:
D:
答案: 【
】
3、单选题:
在绘制程序流程图时,下面哪个表示“选择结构”【 】
选项:
A:
B:
C:
D:
答案: 【
】
4、单选题:
在绘制程序N-S图时,下面哪个表示“直到型循环结构”【 】
选项:
A:
B:
C:
D:
答案: 【
】
5、单选题:
下列关于C语言特点的描述,不正确的是【 】
选项:
A:C语言是一种结构化程序设计语言
B:C语言的可移植性差
C:C语言兼有高级语言和低级语言的双重特点,执行效率高
D:C语言既可用来编写应用软件,又可用来编写系统软件
答案: 【C语言的可移植性差】
第二章 单元测试
1、单选题:
十六进制数0X11对应的十进制数是【 】
选项:
A:
2
B:
其它答案都不正确
C:
17
D:
11
答案: 【
17
】
2、单选题:
下列C语言书写形式中属于合法的十进制整型常量的是 【 】
选项:
A:045L
B:0X7F4
C:82u
D:0x81p
答案: 【82u】
3、单选题:
字符’3’的ASCII码值是【 】
选项:
A:
48
B:
3
C:
51
D:
其它答案都不正确
答案: 【
51
】
4、单选题:
下列合法的C语言标识符是【 】
选项:
A:float
B:2x
C:a&b
D:_xyz
答案: 【_xyz】
5、单选题:
下面哪个是合法的C语言字符型变量定义【 】
选项:
A:Char a;
B:float a1,a2;
C:char _a1,_a2;
D:CHAR a1,a2,a3;
答案: 【char _a1,_a2;】
第三章 单元测试
1、单选题:
若有定义float a;,执行表达式a=1/2后,a的值是【 】
选项:
A:
1
B:
0.5
C:
0
D:
其它答案都不正确
答案: 【
】
2、单选题:
已知 int n=3,k=1;,执行语句n*=k+1后,n的值是【 】
选项:
A:
其它答案均不正确
B:
6
C:
4
D:
3
答案: 【
】
3、单选题:
C语言中,s=–i; 等价于【 】
选项:
A:s=i; s=s-1
B:s=i; s=i-1;
C:i=i-1; s=i;
D:s=i; i=i-1;
答案: 【】
4、单选题:
已知unsigned char a=0x53,b=0x31;,表达式a&b的值是【 】
选项:
A:
其它答案都不正确
B:
0x73
C:
0x62
D:
0x11
答案: 【
】
5、单选题:
已知int a=18;,表达式a>>2的值是【 】
选项:
A:72
B:4
C:4.5
D:5
答案: 【】
第四章 单元测试
1、单选题:
以下语句的输出结果是【 】
int x=29;
printf(‘%d,%o,%x’,x,x,x);
选项:
A:
35,29,1d
B:
29,1d,35
C:
其它答案都不正确
D:
29,35,1d
答案: 【
】
2、单选题:
设x、y均为整型变量,且x=6,y=8,则以下语句的输出结果是【 】
printf(‘%d,%d’,x–,–y);
选项:
A:
5,7
B:
6,8
C:
其它答案均不正确
D:
6,7
答案: 【
】
3、单选题:
putchar函数可以向终端输出一个【 】
选项:
A:整型变量表达式
B:整型变量值
C:字符串
D:字符
答案: 【】
4、单选题:
已知i , j , k为int 型变量,若从键盘输入:1 , 2 , 3↙(↙表示回车),
使i的值为1,j的值为2,k的值为3,则函数形式为【 】
选项:
A:scanf (“ %d , %d , %d ”, &i , &j , &k ) ;
B:scanf (“ %2d %2d %2d ”, &i , &j , &k ) ;
C:scanf (“ %d %d %d ”, &i , &j , &k ) ;
D:scanf (“ i = %d , j = %d , k = %d ” , &i , &j , &k ) ;
答案: 【】
5、单选题:
如果x为float类型变量,则以下语句的输出结果为【 】
x=123.456;
printf (“%4.2fn”,x);
选项:
A:宽度不够,不能输出
B:123.45
C:123.46
D:123.456
答案: 【】
第五章 单元测试
1、单选题:
已知定义语句:int x=3, y=0, z=0; 则值为0的表达式是【 】
选项:
A:x||z+2&&y-z
B:x&&y
C:!((x<y)&&!z||y)
D:x||z
答案: 【
2、单选题:
if语句的格式如下: if(表达式) 语句;
其中的“表达式”【 】
选项:
A:可以是逻辑表达式或关系表达式
B:必须是关系表达式
C:可以是任意合法的表达式
D:必须是逻辑表达式
答案: 【】
3、单选题:
执行下列程序段,若从键盘输入–10,则结果是【 】
main()
{ int x,y;
scanf(‘%d’,&x);
if(x>0) y=1;
else if(x==0) y=0;
else y=-1;
printf(‘%d’,y);
}
选项:
A:
1
B:
-1
C:
其它答案都不正确
D:
0
答案: 【
】
4、单选题:
下列程序段执行后,y的值是【 】
int x=80,y;
y=x>50?60:70;
选项:
A:60
B:70
C:80
D:50
答案: 【】
5、单选题:
执行下列程序段,若从键盘输入字符y,则结果是【 】
int x=10, y=20, z;char ch;
scanf(“%c”, &ch);
switch(ch)
{ case ‘x’:z=x+y;break;
case ‘y’:z=x-y;
default:z=0;
}
printf(“%d”,z);
选项:
A:0
B:以上答案都不对
C:30
D:-10
答案: 【】
第六章 单元测试
1、单选题:
下列各C语言程序段中不会构成死循环的程序段是( )
选项:
A:int x=5;
while(x);–x;
B:int x=5;
while(x=2);
C:int x;
for(x=5;x<10;x++)
x–;
D:int x=5;
do
{++x;
}while(x>=100);
答案: 【】
2、单选题:
下列程序段的for循环,其循环次数是( )
main()
{int i,k;
k=0;
for (i=0;i<=9&&k!=10;i++)
{ scanf(“%d”,&k);printf(“%dn”,k);}
return 0;
}
选项:
A:最多11次
B:最多10次
C:0次
D:无穷次
答案: 【
3、单选题:
下列程序的运行结果是( )
#include
int main()
{ int x=3,y=6,z=0;
while(x++!=(y=y-1))
{z++;
if(y<x) break;
}
printf(‘x=%d,y=%d,z=%d’,x,y,z);
return 0;
}
选项:
A:
x=4,y=4,z=1
B:
x=5,y=5,z=1
C:
x=5,y=4,z=1
D:
x=5,y=4,z=2
答案: 【
】
4、单选题:
以下程序的输出结果是( )。
int main ( )
{ int i ,j ,s=0 ;
for ( i=1 ; i<=15 ; i+=4 )
for (j=3; j<=19 ; j+=4 )
s++ ;
printf ( “%dn” , s ) ;
return 0;
}
选项:
A:20
B:24
C:16
D:15
答案: 【】
5、单选题:
以下程序的输出结果是( )。
int main()
{int i=0,s=0;
while(++i)
{ if(i==10) break;
if(i%3!=1) continue;
s=s+i;
}
printf(“s=%dn”,s);
return 0;
}
选项:
A:s=11
B:s=10
C:s=9
D:s=12
答案: 【】
第七章 单元测试
1、单选题:
有如下定义int a[6],b[3][4];则对数组元素引用正确的是( )
选项:
A:a(5)
B:b[2,3]
C:a[2-1]
D:b[0][4]
答案: 【
2、单选题:
下列数组的定义和初始化中,错误的是( )
选项:
A:
int a [ 5 ] = { 1, 2 , 3 } ;
B:
int a [ 5 ] = { 1, 2 , 3 , 4, 5 } ;
C:
int a [ ][2] = {{1, 2}, {3 , 4}};
D:
int a [2 ][ ] = {{1, 2}, {3 , 4}};
答案: 【
】
3、单选题:
已知int型变量占4个字节的存储单元,则int a[5]={10,15,20};定义的数组a在内存中所占字节数为( )
选项:
A:
20
B:
3
C:
12
D:
40
答案: 【
】
4、单选题:
下列对C语言字符数组的描述中错误的是( )
选项:
A:字符数组中的字符串可以整体输入、输出
B:字符数组可以存放字符串
C:可以用strcpy函数对字符数组中的字符串进行复制
D:可以用关系运算符对字符数组中的字符串进行比较
答案: 【】
5、判断题:
给出如下定义:
char x [ ] = { “ abcdefg ” };
char y [ ] = { ‘a’, ‘b’, ‘c’, ‘d ’, ‘e’, ‘f ’, ‘g’ , ‘’};
则数组x与数组y等价
选项:
A:错
B:对
答案: 【】
第八章 单元测试
1、单选题:
以下函数值的类型是( )
fun (float x)
{ float y ;
y = x * 3 + 5;
return ( y ) ; }
选项:
A:int
B:float
C:void
D:不确定
答案: 【】
2、单选题:
在调用函数时,如果实参是简单的变量,它与对应形参之间的数据传递方式是( )
选项:
A:传递方式由用户指定
B:地址传递
C:单向值传递
D:由实参传形参,再由形参传实参
答案: 【】
3、单选题:
以下叙述中不正确的是( )
选项:
A:在函数体的复合语句中定义的变量,其作用域仅限于该复合语句
B:形参是局部变量
C:不同函数中可以定义相同名字的变量
D:全局变量不可以与局部变量重名
答案: 【
4、判断题:
函数的返回值通过return语句实现
选项:
A:对
B:错
答案: 【
5、判断题:
调用函数时,函数名后面的参数是函数的形参
选项:
A:对
B:错
答案: 【】
第九章 单元测试
1、判断题:
如果一个变量专门用来存放其他变量的地址,则称它为指针变量
选项:
A:对
B:错
答案: 【】
2、判断题:
已有变量定义float x;若要定义一个可以指针变量p并使其指向变量x,应使用的语句是float *p=&x;
选项:
A:错
B:对
答案: 【】
3、判断题:
若已有定义语句 int *p,x=100; 另有语句x=x*5; 这两个语句中的*意义是相同的。
选项:
A:对
B:错
答案: 【】
4、判断题:
char *s1=’AbDeG’;
char *s2=’aBDeG’;
s1+=2;s2+=2;
printf(‘%d’,strcmp(s1,s2);)
以下程序段的输出结果是 0
选项:
A:错
B:对
答案: 【】
5、判断题:
在任何情况下指针变量都可以进行加减乘除运算,且是有意义的。
选项:
A:错
B:对
答案: 【】
请先
!