大学MOOC C语言程序设计(兰州交通大学)1454007161 最新慕课完整章节测试答案
第一周程序设计与C语言
小测验1.1
1、单选题:
计算机本身最擅长的能力是?
选项:
A: 推理
B: 想像
C: 重复
D: 分析
答案: 【 重复】
2、判断题:
编程语言是和计算机交谈的语言
选项:
A: 正确
B: 错误
答案: 【 错误】
3、判断题:
计算机(CPU)可以直接运行人类编写的程序
选项:
A: 正确
B: 错误
答案: 【 错误】
小测验1.2
1、单选题:
关于C语言,以下说法错误的有:
选项:
A: C语言是和Unix操作系统一同发展起来的
B: C语言不能写图形界面的软件
C: C语言一般是编译执行的
D: C语言诞生于1970年代
答案: 【 C语言不能写图形界面的软件】
2、单选题:
轻量级的编程软件,如Geany+MinGW或Sublime Text+MinGW,与专门的IDE如Dev C++相比,什么功能没有了?(提示:上课没有直接讲,但是间接提到了)
选项:
A: 单步调试
B: 源代码编辑时的语法高亮
C: 编译程序
D: 运行程序
答案: 【 单步调试】
3、填空题:
IDE的中文翻译是什么?
答案: 【 集成开发环境】
第二周计算
小测验2.1
1、多选题:
以下哪些是有效的变量名?
选项:
A: main
B: 4ever
C: monkey-king
D: __int
答案: 【 main;
__int】
2、多选题:
给定:int a,b;scanf("%d %d", &a, &b);则以下哪些输入方式是正确的?
选项:
A: 1 2
B: 1,2
C: 1(回车)2
D: 1、2
答案: 【 1 2;
1(回车)2】
3、多选题:
给定:int a,b; 以下哪些scanf的使用是正确的?
选项:
A: scanf("%d", &a);scanf("%d", &b);
B: scanf("%d %d", &a, &b);
C: scanf("%d, %d", &a, &b);
D: scanf("%d %d", a, b);
答案: 【 scanf("%d", &a);scanf("%d", &b);;
scanf("%d %d", &a, &b);;
scanf("%d, %d", &a, &b);】
4、判断题:
给定以下代码段:int a,b=0;则a的初始值是0
选项:
A: 正确
B: 错误
答案: 【 错误】
5、填空题:
写出下式的运算结果:10/3.0*3
答案: 【 10.0】
6、填空题:
写出下式的运算结果:10/3*3.0
答案: 【 9.0】
小测验2.2
1、填空题:
写出以下代码执行后,t1和t2的值,以空格隔开:int a=14;int t1 = a++;int t2 = ++a;
答案: 【 14 16】
2、填空题:
写出以下表达式的结果,一个结果一行:6 + 5 / 4 - 22 + 2 * (2 * 2 - 2) % 2 / 310 + 9 * ((8 + 7) % 6) + 5 * 4 % 3 * 2 + 3 1 + 2 + (3 + 4) * ((5 * 6 % 7 / 8) - 9) * 10
答案: 【 5
2
44
-627】
第三周判断
小测验3.1
1、判断题:
以下语句是否可以通过编译:if ( 1<=n<=10 );
选项:
A: 正确
B: 错误
答案: 【 正确】
2、判断题:
以下语句是否表示n属于[1,10]:if ( 1<=n<=10 );
选项:
A: 正确
B: 错误
答案: 【 错误】
3、填空题:
写出程序的输出结果:int i,j,k;i=5; j=10; k=1;printf("%d", k>i<j);
答案: 【 1】
4、填空题:
写出程序的输出结果:int i,j,k;i=2;j=3;k = i*j==6;printf("%dn", k);
答案: 【 1】
5、填空题:
写出程序的输出结果:int i,j,k;i=3;j=2;k=1;printf("%d", i<j == j<k);
答案: 【 1】
小测验3.2
1、填空题:
写出程序的输出:int i=1;switch ( i%3 ) {case 0: printf("zero");case 1: printf("one");case 2: printf("two");}
答案: 【 onetwo】
2、填空题:
写出程序的输出:int a = 58;if ( a>50 ) printf("A");if ( a>40 ) printf("B");if ( a>30 ) printf("C");
答案: 【 ABC】
选择结构单元测试
1、单选题:
设a=10, b=12, c=8, d=5, 则表达式a>b?a:(c>d?c:d)值为( )。
选项:
A: 10
B: 12
C: 8
D: 5
答案: 【 8】
2、单选题:
正确表示X在闭区间 [10,20]或 [80,100]内的C++语言表达式是( )。
选项:
A: 10<=X&X<=20&X>=80&X<=100
B: 10<=X<=20 AND 80<=X<=100
C: 10<X<20 &&80<X<100
D: X>=10&&X<=20 || X>=80&&X<=100
答案: 【 X>=10&&X<=20 || X>=80&&X<=100】
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; else k=0;
答案: 【 if((a>b)&&(b>c))k=1; else k=0; 】
4、单选题:
设有定义int a=1, b=2,c=3;,以下语句中执行效果与其他三个不同的是( )。
选项:
A: if(a>b) c=a, a=b,b=c;
B: if(a>b){c=a;a=b;b=c;}
C: if(a>b)c=a;a=b;b=c;
D: if(!(a<=b)){c=a;a=b;b=c;}
答案: 【 if(a>b)c=a;a=b;b=c; 】
5、单选题:
if语句的基本形式是:if(表达式)语句,以下关于"表达式"值的叙述中正确的是
选项:
A: 必须是逻辑值
B: 必须是整数值
C: 必须是正数
D: 可以是任意合法的数值
答案: 【 可以是任意合法的数值 】
6、单选题:
若变量已正确定义,在if(W) printf("%dn",k);中以下不可替代W的是( )。
选项:
A: a<>b+c
B: ch=getchar()
C: a= =b+c
D: a++
答案: 【 a<>b+c 】
7、单选题:
有以下程序 #include<stdio.h> void main() { int a=1, b=0; if(!a)b++; else if(a==0) if(a) b+=2; else b+=3; printf("%dn",b); 或者cout<<b<<endl;} 程序运行后的输出结果是
选项:
A: 0
B: 1
C: 2
D: 3
答案: 【 0】
8、单选题:
有以下程序#include <sthio.h>void main(){ int a;scanf(“%d”,&a);if(a++<9) printf((“%dn”,a);else printf((“%dn”,a--);}程序运行时键盘输入9<回车>,则输出的结果是( )。
选项:
A: 10
B: 11
C: 9
D: 8
答案: 【 10】
9、单选题:
若有定义语句int a,b;double x;则下列选项中没有错误的是( )。
选项:
A: switch(x%2) { case 0: a++;break; case 1: b++;break; default: a++;b++; }
B: switch((int)x/2.0) { case 0: a++;break; case 1: b++;break; default: a++;b++;}
C: switch(int(x%2)) { case 0: a++;break; case 1: b++;break; default: a++;b++; }
D: switch((int)(x)%2) { case 0.0: a++;break; case 1.0: b++;break; default: a++;b++; }
答案: 【 switch(int(x%2)) { case 0: a++;break; case 1: b++;break; default: a++;b++; } 】
10、单选题:
有以下程序#include < stdio.h> void main() { int a=l,b=2,c=3,d=0; if(a==l && b++==2) if(b!=2||c--!=3) printf("%d,%d,%dn",a,b,c); else printf("%d,%d,%dn",a,b,c); else printf("%d,%d,%dn",a,b,c); }程序运行后的输出结果是( )。
选项:
A: 1,2,3
B: 1,3,2
C: l,3,3
D: 3,2,1
答案: 【 l,3,3】
11、单选题:
执行语句序列: int n; cin>>n; switch(n) { case 1: case 2: cout<<'1'; case 3: case 4: cout<<'2'; break; default: cout<<'3'; } 时,若从键盘上输入1,则屏幕显示( ) 。
选项:
A: 1
B: 2
C: 3
D: 12
答案: 【 12】
12、单选题:
下列程序段的输出是( )。int a=2, b= -1, c=2; if(a<b) if(b<c) &
