|
第一次在线作业
已完成%(共题,还剩 题)
单选题 (共22道题)
展开
收起1.(2.5分) 一个C语言程序总是从()开始执行。
A、A. 主过程
B、B. 主函数
C、C. 子程序
D、D.主程序
2.(2.5分) 以下叙述不正确的是:()。
A、A. 在C程序中,语句之间必须要用分号" ;" 分隔
B、B. 若a是实型变量,C程序中a=10是正确的,因为实型变量中允许存放整型数
C、C. 在C程序中,无论是整数还是实数都能正确无误地表示
D、D. 在C程序中,%是只能用于整数运算的运算符
3.(2.5分) 以下不正确的C语言标识符是() 。
A、A. ABC
B、B. abc
C、C. a_bc
D、D. ab.c
4.(2.5分) 下列字符串是标识符的是:()。
A、A. _HJ
B、B. 9_student
C、C. long
D、D. LINE 1
5.(2.5分) 以下说法中正确的是()。
A、A. C语言程序总是从第一个定义的函数开始执行
B、B. 在C语言程序中,要调用的函数必须放在main()函数中定义
C、C. C语言程序总是从main()函数开始执行
D、D. C语言程序中的main()函数必须放在程序的开始部分
6.(2.5分) 在C语言中,字符型数据在内存中以()形式存放。
A、A. 原码
B、B. BCD码
C、C. 反码
D、D. ASCII码
7.(2.5分) 若有定义:int a=7; float x=2.5; y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是()。
A、A. 2.500000
B、B. 2.750000
C、C. 3.500000
D、D. 0.000000
8.(2.5分) 设有说明:char w; int x; float y; double z;则表达式w*x+z-y值的数据类型为() 。
A、A. float
B、B. char
C、C. int
D、D. double
9.(2.5分) 以下()是不正确的转义字符。
A、A. ' \\'
B、B. ' \n'
C、C. ' 081'
D、D. ' \0'
10.(2.5分) 字符串" \\\" ABC\" \\" 的长度是()。
A、A. 11
B、B. 7
C、C. 5
D、D. 3
11.(2.5分) 若x是int型变量,y是float型变量,所用的scanf调用语句格式为:scanf(" x=%d,y=%f" ,& x,& y); 则为了将数据10和66.6分别赋给x和y,正确的输入应是()。
A、A. x=10,y=66.6< 回车>
B、B. 10 66.6< 回车>
C、C. 10< 回车> 66.6< 回车>
D、D. x=10< 回车> y=66.6< 回车>
12.(2.5分) 若有定义double x=1,y;则y=x+3/2; printf(“%f”,y);的结果是()。
A、A.2.500000
B、B.2.5
C、C.2.000000
D、D.2
13.(2.5分) 若x=0,y=3,z=3,以下表达式值为0的是()。
A、A. !x
B、B.x< y? 1:0
C、C. x%2& & y==z
D、D. y=x||z/3
14.(2.5分) 以下运算符中优先级最高的为()。
A、A. & &
B、B. !
C、C. !=
D、D. ||
15.(2.5分) 若w=1,x=2,y=3,z=4,则条件表达式w< x?w:y< z?y:z的结果为()。
A、A. 4
B、B. 3
C、C. 2
D、D. 1
16.(2.5分) 分析以下程序, 下列说法正确的是()。 void main() { int x=0,a=0,b=0; if(x=a+b) printf(" * * * *\n" ); else printf(" # # # #\n" ); }
A、A. 有语法错,不能通过编译
B、B. 通过编译,但不能连接
C、C. 输出* * * *
D、D. 输出# # # #
17.(2.5分) 程序段如下: int k=5;do{k--;}while(k< =0); 则以下说法中正确的是()。
A、A. 循环执行5次
B、B. 循环是无限循环
C、C. 循环体语句一次也不执行
D、D. 循环体语句执行一次
18.(2.5分) 设i和x都是int类型,for(i=0,x=0;i< =9& & x!=876;i++) scanf(" %d" ,& x); 则for循环语句()。
A、A. 最多执行10次
B、B. 最多执行9次
C、C. 是无限循环
D、D. 循环体一次也不执行
19.(2.5分) for(i=0,k=-1;k=1;i++,k++) printf(" * * * *" );该循环语句()。
A、A. 判断循环结束的条件非法
B、B. 是无限循环
C、C. 只循环一次
D、D. 一次也不循环
20.(2.5分) 程序段: int k=-20;while(k=0) k=k+1; 则以下说法中正确的是()。
A、A. while循环执行20次
B、B. 循环是无限循环
C、C. 循环体语句一次也不执行
D、D. 循环体语句执行一次
21.(2.5分) 下列程序段执行后k值为()。 int k=0,i,j; for(i=0;i< 5;i++) for(j=0;j< 3;j++) k=k+1 ;
A、A. 15
B、B. 3
C、C. 5
D、D. 8
22.(2.5分) 程序段如下,以下说法中不正确的是()。 void main() { int k=2,; while(k< 7) { if(k%2) { k=k+3; printf(“k=%d\n”,k); continue; } k=k+1; printf(“k=%d”,k); } }
A、A. k=k+3;执行一次
B、B. k=k+1;执行2次
C、C. 执行后k值为7
D、D. 循环体只执行一次
判断题 (共18道题)
展开
收起23.(2.5分) 设int a=12; 则表达式a/=a+a的值是0.5。
正确
错误
24.(2.5分) 表达式x=(a=3,6*a)和表达式x=a=3,6*a分别是赋值表达式和逗号表达式,两个表达式执行完x值分别是18和3。
正确
错误
25.(2.5分) 在C语言中,运算符的优先级最小的是逗号运算符。
正确
错误
26.(2.5分) " %-ms" 表示如果串长小于m,则在m列范围内,字符串向左靠,右补空格。
正确
错误
27.(2.5分) 当a=3,c=3时,表达式 a==c的值为3
正确
错误
28.(2.5分) 数学公式y=-6xz+5[2(a-5)+3]写成C语言表达式是y=-6*x*z+5*[2*(a-5)+3]
正确
错误
29.(2.5分) 定义 int x=10,y,z;执行y=z=x;x=y==z后,变量x的值为1。
正确
错误
30.(2.5分) break语句可用于循环语句和if语句中。
正确
错误
31.(2.5分) include < stdio.h> void main() { int a=-1,b=4,k; k=(a++< =0)& & (!(b--< =0)); printf(" %d,%d,%d\n" ,k,a,b); } 该程序运行结果是:1,0,3
正确
错误
32.(2.5分) void main() { int x=1,y=1,z=10; if(z< 0) if(y> 0) x=3; else x=5; printf(" %d," ,x); if(z=y< 0) x=3; else if(y==0) x=5; else x=7; printf(" %d," ,x); printf(" %d," ,z); } 该程序运行结果是:1,7,0
正确
错误
33.(2.5分) void main() { char x=‘B’; switch(x) { case ‘A’: printf(“A”); case ‘B’: printf(“B”); case ‘C’: printf(“C”); default: printf(“other”); } } 该程序运行结果是:Bcother
正确
错误
34.(2.5分) void main() { int num=0; while(num< =2) { num++; printf(" %d" ,num);} } 该程序运行结果是:123
正确
错误
35.(2.5分) 下面程序,当输入为:" abc?" 时,执行结果是:abc #include < stdio.h> void main() { char c; c=getchar(); while (c!=' ?' ) { putchar(c); c=getchar();} }
正确
错误
36.(2.5分) void main() { int i; for(i=1;i< =5;i++) { if(i%2) putchar(‘< ’); else continue; putchar(‘> ’); } putchar(‘#’); } 该程序运行结果是:< > < > < > #
正确
错误
37.(2.5分) void main() { int i,j; for(i=0;i< =3;i++) { for(j=0;j< =i;j++) printf(" (%d,%d)," ,i,j); printf(" \n" ); } } 该程序运行结果是: (0,0), (1,0),(1,1), (2,0),(2,1),(2,2), (3,0),(3,1),(3,2),(3,3),
正确
错误
38.(2.5分) void main() { int i,s ; for(i=2;i< =100;i+=2 ) s+=i; } 以上程序的功能是计算2+4+6+8+...+98+100。
正确
错误
39.(2.5分) 某铁路线上有若干个车站,需要准备几种车票满足所有的出行需要,可通过以下程序求得: void main() { int i,j,station,total=0; printf(" 输入车站数:" ); scanf(" %d" ,& station); for (i=1;i< station ;i++) for (j=i+1;j< =station;j++) total= total+2; printf(" 车票种类=%d \n" ,total); }
正确
错误
40.(2.5分) 以下程序的功能是判断一个数是否是素数 #include < math.h> void main( ) { int m,i; scanf(" %d" ,& m); for(i=2;i< =sqrt(m);i++) if(m%i==0) break; if(i> sqrt(m)) printf(“%d 是素数" ,m); else printf(“%d 不是素数" ,m); }
正确
错误
|
|