大学MOOC 计算机基础(理工科)-李雪梅(山西大学)1451628216 最新慕课完整章节测试答案
第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、单选题:
以下哪个循环和其他三条循环不等价(假设循环体都是一样的)?
选项:
A: for ( i=0; i<10; i++ ) {...}
B: for ( i=0; i<10; ++i ) {...}
C: for ( i=0; i++<10; ) {...}
D: for ( i=0; i<=9; i++ ) {...}
答案: 【 for ( i=0; i++<10; ) {...}】
2、判断题:
while循环的条件满足的时候循环继续,而do-while的条件满足的时候循环就结束了
选项:
A: 正确
B: 错误
答案: 【 错误】
3、填空题:
以下代码片段执行结束后,变量i的值是多少?int i =10;
while ( i>0 ) {
i /=2;
}
答案: 【 0】
4、填空题:
以下代码片段执行结束后,变量i的值是多少?int i = 1;
do {
i += 5;
} while (i<17);
答案: 【 21】
5、填空题:
以下代码段的输出是什么?for ( int i=10; i> 1; i /=2 ) {
printf("%d ", i++);
}
答案: 【 10 5 3 2】
第4周进一步的判断与循环
小测验
1、单选题:
以下哪种运算能从变量x中取得十进制最低位的数字
选项:
A: x /10
B: x % 10
C: x * 10
D: 10 / x
答案: 【 x % 10】
2、填空题:
当需要累加一些值的时候,用来记录累加结果的变量应该被初始为:
答案: 【 0】
第5周循环控制
小测验
1、填空题:
以下代码段的输出是:int sum = 0;for ( int i=0; i<10; i++ ) { if ( i%2 ) continue; sum += i;}printf("%dn", sum);
答案: 【 20】
2、填空题:
以下代码段的输出是:int sum = 0;for ( int i=0; i<10; i++ ) { if ( i%2 ) break; sum += i;}printf("%dn", sum);
答案: 【 0】
第6周数组与函数
小测验
1、单选题:
以下哪句不是正确的函数原型?
选项:
A: int f();
B: int f(int i);
C: int f(int);
D: int f() {}
答案: 【 int f() {}】
2、单选题:
以下哪个函数的定义是错误的?
选项:
A: void f() {}
B: void f(int i) { return i+1; }
C: void f(int i) {}
D: int f() { return 0; }
答案: 【 void f(int i) { return i+1; } 】
3、多选题:
对于不返回值而且只有一个int类型的参数的函数,以下哪些函数原型是正确的?
选项:
A: void f(int x);
B: void f();
C: void f(int);
D: void f(x);
答案: 【 void f(int x);;
void f();;
void f(int);】
4、填空题:
以下程序的输出是什么?void swap(int a, int b);
int main()
{
int a = 5;
int b = 6;
swap(a,b);
printf("%d-%dn", a, b);
return 0;
}
void swap(int a, int b)
{
int t = a;
a = b;
b = t;
}
答案: 【 5-6】
第一次单元测验
1、单选题:
以下哪个选项是判断ch是否为大写字母的正确形式?
选项:
A: ch >= 'A' && ch <='Z'
B: ch <= 'Z' && ch >= 'A'
C: 'A' <= ch <= 'Z'
D: ch >= 'A' || ch <= 'Z'
E: ch >='A' AND ch <='Z'
F: ch BETWEEN 'A' AND 'Z"
答案: 【 ch >= 'A' && ch <='Z';
ch <= 'Z' && ch >= 'A'】
2、单选题:
以下代码片段的输出是:int j=4;for ( int i=j; i<=2*j; i++ ) { switch ( i/j ) { case 0: case 1: printf(“*”); break; case 2: printf(“#”); }}
选项:
A: ****#
B: ****##
C: ***#
D: *#
E: ****
答案: 【 ****#】
3、单选题:
下列程序段输出结果为:int x=1, y=012;printf(“%d”,y*x++);
选项:
A: 10
B: 12
C: 20
D: 24
答案: 【 10】
4、单选题:
下面程序段的输出结果是?int k;while(k!=0) k=k-1;printf(“%d”, k);
选项:
A: 0
B: 无论k的初值如何,最终都会减到0的。
C: 因为k没有初值,所以结果不确定
D: 1
E: 因为没有给k赋初值,因此程序不能通过编译
答案: 【 0;
无论k的初值如何,最终都会减到0的。】
5、单选题:
以下表达式x&&1用在if的条件中时,和哪个是等价的:
选项:
A: x!=0
B: x
C: x==0
D: x==1
E: x!=1
答案: 【 x!=0;
x】
6、单选题:
以下哪个不是C语言的关键字?
选项:
A: include
B: if
C: while
D: int
E: for
答案: 【 include】
7、单选题:
对于以下代码: unsigned short sht = 0; sht --;执行后,sht的值是?
选项:
A: 65535
B: 2的16次方-1
C: -1
D: 32767
E: 65536
答案: 【 65535;
2的16次方-1】
8、单选题:
以下哪个直接量是十进制的124?
选项:
A: 0174
B: 0x
