第一章 单元测试
1、 问题:下边不合法的常量是( )。
选项:
A:-0xffff
B:011
C:0x3
D:068
答案: 【068】
2、 问题:有如下程序段:
int a1,a2;
char c1,c2;
scanf(“%d%c%d%c”,&a1,&c1,&a2,&c2);
若要求a1,a2,c1,c2的值分别为10、20、A、B,正确的数据输入是( )
选项:
A:10A 20B <CR>
B:10 A 20 B <CR>
C:10 A20B <CR>
D:10A20 B <CR>
答案: 【10A 20B <CR>】
3、 问题:一个C程序的执行是从( )。
选项:
A:本程序的main函数开始,到main函数结束
B:本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
C:本程序的main函数开始,到本程序文件的最后一个函数结束
D:本程序文件的第一个函数开始,到本程序main函数结束
答案: 【本程序的main函数开始,到本程序文件的最后一个函数结束】
4、 问题:在 C 语言中,每个语句必须以结束。 ( )
选项:
A:回车符
B:冒号
C:逗号
D:分号
答案: 【分号 】
5、 问题:不合法的十六进制数是( )。
选项:
A
xff
B:0xabc
C:0x11
D:0xbeef
答案: 【oxff 】
第二章 单元测试
1、 问题:若k是int型变量,且有以下for语句:for(k=-1;k<0;k++) printf(“**\n”);,则下面关于语句执行情况的叙述中正确的是:( )
选项:
A:循环体执行一次
B:循环体执行二次
C:循环体一次也不执行
D:构成无限循环
答案: 【循环体执行一次】
2、 问题:以下程序输出结果是:
main()
{int i=1,j=1,k=2; if((j++||k++) && i++) printf(“%d,%d,%d\n”,i,j,k); }
( )
选项:
A:1,1,2
B:2,2,1
C:2,2,2
D:2,2,3
答案: 【2,2,2】
3、 问题:以下程序段中与语句k=a>b?(b>c?1:0):0;功能等价的是:( )
选项:
A:if((a>b &&(b>c)) k=1; else k=0;
B:if((a>b)||(b>c)) k=1; else k=0;
C:if(a<=b) k=0; else if(b<=c) k=1;
D:if(a>b) k=1; else if(b>c) k=1;
答案: 【if((a>b &&(b>c)) k=1; else k=0;】
4、 问题:能正确表示逻辑关系:”a≥10 或a≤0”的表达式是:( )
选项:
A:a>=10 or a<=0
B:a>=0 | a<=10
C:a>=10 && a<=0
D:a>=10 || a<=0
答案: 【a>=10 || a<=0】
5、 问题:判断char变量ch是否为大写字母的正确表达式是:( )
选项:
A:‘A’<=ch<=’Z’
B
ch>=’A’) & (ch<=’Z’)
C
ch>=’A’) && (ch<=’Z’)
D
‘A’<=ch) AND (‘Z’>=ch)
答案: 【(ch>=’A’) && (ch<=’Z’) 】