MOOC C程序设计基础 (张丽丽)(厦门大学)1462626165 最新慕课完整章节测试答案
第一周 C语言简介
判断题本周语法汇总
1、判断题:
编写C程序时,main函数必不可少。
选项:
A: 正确
B: 错误
答案: 【 正确】
2、判断题:
printf("n"); 可实现换行
选项:
A: 正确
B: 错误
答案: 【 正确】
3、判断题:
C的每条语句结束处必须用分号。
选项:
A: 正确
B: 错误
答案: 【 正确】
4、判断题:
注释语句不影响程序的运行。
选项:
A: 正确
B: 错误
答案: 【 正确】
5、判断题:
若使用printf输出结果,则必须在程序前添加#include <stdio.h>
选项:
A: 正确
B: 错误
答案: 【 正确】
6、判断题:
C程序中的标点符号(如分号;)必须用英文的标点符号。
选项:
A: 正确
B: 错误
答案: 【 正确】
选择题
1、单选题:
下面的叙述正确的是()。
选项:
A: 一个C的源程序必须包含1个以上的main函数
B: 在C的源程序中,main函数不是必须的
C: 一个C的源程序可以由一个或多个函数组成
D: printf函数是程序执行的起始位置
答案: 【 一个C的源程序可以由一个或多个函数组成】
2、单选题:
C程序是从()开始执行的。
选项:
A: return语句
B: 主函数
C: 文件开始的注释部分
D: 放在最前面的函数
答案: 【 主函数】
3、单选题:
关于C程序的叙述,正确的是( )。
选项:
A: 一条语句可以写在多行,也可以多条语句写在一行
B: 一行只能写一条语句
C: 从//开始的程序都是注释内容
D: /* */只能写在一行,其中的内容为注释部分
答案: 【 一条语句可以写在多行,也可以多条语句写在一行】
4、单选题:
以下正确的printf语句是()。
选项:
A: printf ("This is a C program.")
B: printf ("This is a C program.);
C: printf ("This is a C program.n");
D: printf "This is a C program.";
答案: 【 printf ("This is a C program.n");】
5、单选题:
/*程序功能:打印输出hello world #include <stdio.h> int main() { printf("Hello, worldn"); return 0;}上面程序的运行结果是( )
选项:
A: 程序出错,不能运行
B: Hello, world
C: 程序功能:打印输出hello world
D: "Hello, worldn"
答案: 【 程序出错,不能运行】
6、单选题:
设有程序“1.cpp”,编译后运行该程序,执行的是( )文件。
选项:
A: 1.cpp
B: 1.obj
C: 1.exe
D: 1.c
答案: 【 1.exe】
7、多选题:
下面程序的错误是()#include <stdio.h> int mian() { printf("hello world") return 0;}
选项:
A: printf("hello world") 后面少分号
B: 主函数名写错
C: 多了return 0;
D: main()后面少分号
答案: 【 printf("hello world") 后面少分号;
主函数名写错】
8、多选题:
输出结果为500+200=700的语句是()。
选项:
A: printf("500+200=%d,500+200");
B: printf("500+200=%d",500+200);
C: printf("500+200=700");
D: print 500+200=700;
答案: 【 printf("500+200=%d",500+200);;
printf("500+200=700");】
9、多选题:
输出结果为25*64=1600的语句是()。
选项:
A: printf("25*64=%d",25*64);
B: printf("25*64=1600");
C: printf("25*64=%d, 25*64");
D: print 25*64=1600;
答案: 【 printf("25*64=%d",25*64);;
printf("25*64=1600");】
10、多选题:
下面是关于C程序注释的叙述,其中正确的是( )。
选项:
A: /*……*/可以注释多行,也可以注释一行
B: 从//开始的程序都是注释内容
C: /* */与//注释的范围没有区别
D: //是行注释,从//开始至行尾为注释内容
答案: 【 /*……*/可以注释多行,也可以注释一行;
//是行注释,从//开始至行尾为注释内容】
第二周 C语言基础语法
第二周 易错知识点练习1选做
1、单选题:
当x是41.0时,算术表达式5/9*(x-32)的运算结果是( )。
选项:
A: 5
B: 5.0
C: 0
D: 4.9
答案: 【 0】
2、单选题:
选项:
A:
B: 3.14159*r^2/(a+b)
C: 3.14159*r*r/(a+b)
D:
答案: 【 3.14159*r*r/(a+b) 】
3、单选题:
当x是41.0时,printf("%f",5.0/9*(x-32));输出结果是( )。
选项:
A: 5
B: 5.000000
C: 0.000000
D: 4.900000
答案: 【 5.000000】
4、单选题:
x为int型,表达式 (x=1)+2的值是( ),x的值是( )。
选项:
A: 出错,1
B: 1,1
C: 3,1
D: 1,3
答案: 【 3,1】
5、单选题:
int a=10,b=100;printf("%d,%dn,", a++,++b);printf("%d", a);程序的输出结果是( )。
选项:
A: 10,10111
B: 11,10011
C: 10,10110
D: 10,10010
答案: 【 10,10111】
6、多选题:
在C语言中,下面( )是正确的赋值表达式。
选项:
A: x+1=2
B: x=2
C: 2=x
D: b=a=2
答案: 【 x=2;
b=a=2】
语法知识选择题
1、单选题:
下列浮点数的表示中不正确的是( )。
选项:
A: 22.3
B: .719e22
C: e23
D: 12. e2
答案: 【 e23】
2、单选题:
合法的C语言标识符是( )
选项:
A: 2a
B: sum
C: int
D: a*b
答案: 【 sum】
3、单选题:
不合法的C语言标识符是 ( )。
选项:
A: _8_
B: j2_KEY
C: 4d
D: Double
答案: 【 4d】
4、单选题:
下列定义变量的语句中错误的是( )。
选项:
A: int x1;
B: float y1;
C: double z1;
D: Double a1;
答案: 【 Double a1;】
5、单选题:
在C语言中,要求运算数必须是整型的运算符是( )。
选项:
A: %
B: /
C: +
D: -
答案: 【 %】
6、单选题:
下面( )语句正确地描述了计算公式
选项:
A: y = ax*x*x/x – b;
B: y = ax*x*x/(x – b);
C: y = (a*x*x*x)/(x – b);
D: y = a*x*x*x/x – b;
答案: 【 y = (a*x*x*x)/(x – b);】
7、单选题:
下面( )是合法的赋值语句 .
选项:
A: i=1;
B: i+1=5;
C: 5=i;
D: i *3=i+1;
答案: 【 i=1;】
8、单选题:
下面程序的输出是( ) 。#include <stdio.h>int main(){ int x=10,y=3; printf("%d",y=x/y); return 0;}
选项:
A: 0
B: 1
C: 3
D: 不确定的值
答案: 【 3】
9、单选题:
下面程序的输出是( ) 。#include <stdio.h>int main(){ int a= 5; printf("a=%dn",++a+2); return 0;}
选项:
A: a=6
B: 8
C: a=5
D: a=8
答案: 【 a=8】
10、单选题:
78%10的结果是( )。
选项:
A: 78
B: 8
C: 7
D: 10
答案: 【 8】
11、单选题:
下面程序的输出是( ) 。 #include <stdio.h>int main(){ int a=8; printf("%dn",(a++)*2); return 0;}
选项:
A: 8
B: 9
C: 16
D: 18
答案: 【 16】
12、单选题:
下面程序的输出是( ) 。#include <stdio.h>int main(){ int a=3; printf("%dn",(a--)*7); return 0;}
选项:
A: 21
B: 2
C: 3
D: 14
答案: 【 21】
13、单选题:
下面程序的输出是( ) 。#include <stdio.h>int main(){ int b=3,a= 3; printf("%d,%dn",b,a--); return 0;}
选项:
A: 3,2
B: 2,3
C: 3
D: 3,3
答案: 【 3,3】
14、单选题:
i=1;执行( )语句后,变量i的值不会发生变化。
选项:
A: i+5;
B: --i;
C: i=2*i;
D: i=6;
答案: 【 i+5;】
15、单选题:
int x;scanf("%d",&x);下面( )可以获得x的个位数。
选项:
A: x%10;
B: x/10;
C: x/100-x/10;
D: x-x/10;
答案: 【 x%10;】
16、单选题:
语句float x=3.0 ,y=4.0;下列表达式中y的值为9.0的是( )。
选项:
A: y/=x*27/4
B: y+=x+2.0
C: y-=x+0.8
D: y*=x-3.0
答案: 【 y+=x+2.0】
17、单选题:
有关运算符的正确描述是( )
选项:
A: 单目运算符优先级高于双目运算符
B: 赋值运算符是左结合的
C: 所有运算符都是左结合的
D: 赋值号的运算优先级是最低的
答案: 【 单目运算符优先级高于双目运算符】
18、多选题:
下面( )语句正确地描述了方程
选项:
A: y = a * x * x * x + c;
B: y = a * x * x * (x + c);
C: y = (a * x * x * x) + c;
D: y = (a * x) * x * (x + c);
答案: 【 y = a * x * x * x + c;;
y = (a * x * x * x) + c;】
19、多选题:
下面( )能完成变量a,b的值的交换。
选项:
A: t=a;a=b;b=t;
B: a=b;b=a;
C: a=b;
D: a=a+b;b=a-b;a=a-b;
答案: 【 t=a;a=b;b=t;;
a=a+b;b=a-b;a=a-b;】
20、多选题:
( )可以使整型变量i的值加1 。
选项:
A: i++;
B: ++i;
C: i=i+1;
D: i+=1;
答案: 【 i++;;
++i;;
i=i+1;;
i+=1;】
21、多选题:
int y,a;scanf("%d",&y);输入任意整数,下面( )中,a是y的百位数。
选项:
A: a=y/100%10;
B: a=y%1000/100;
C: a=y%100;
D: a=y/100;
E: a=y/10000%10;
F: a=y/1000%10;
答案: 【 a=y/100%10;;
a=y%1000/100;】
第三周 格式化输入输出及选择结构1
第三周 易错知识点练习选做
1、单选题:
int x=8;在C程序中,表达式0<=x<=3的运算结果是( )。
选项:
A: 0
B: 1
C: true
D: false
答案: 【 1】
2、单选题:
int x=2,y=2;printf("%dn", (x=0)&&(y=3));printf("x=%d y=%dn ", x,y);输出结果是( )。
选项:
A: 0x=0 y=3
B: 0x=0 y=2
C: 1x=2 y=2
D: 1x=0 y=2
答案: 【 0x=0 y=2】
3、单选题:
int x=2,y=2;printf("%d ", (x=4)||(y=4));printf("x=%d y=%dn ", x,y);第二个printf的输出结果是( )。
选项:
A: x=4 y=4
B: x=2 y=2
C: x=4 y=2
D: x=2 y=4
答案: 【 x=4 y=2】
4、单选题:
scanf("%d",&a); if(a<60) printf("a=%dn",a); printf("OVERn");如果输入50,则输出结果是( )。
选项:
A: a=50
B: OVER
C: a=50OVER
D: 无输出
答案: 【 a=50OVER】
5、单选题:
scanf("%d",&a); if(a<60) printf("a=%dn",a); printf("OVERn");如果输入70,则输出结果是( )。
选项:
A: a=70
B: OVER
C: a=70OVER
D: 无输出
答案: 【 OVER】
选择题---计分
1、单选题:
能正确表示逻辑关系x<=y<=z的C语言表达式为( )
选项:
A: (x<=y)&&(y<=z)
B: (x<=y)AND(y<=z)
C: (x<=y<=z)
D: (x<=y)&(y<=z)
答案: 【 (x<=y)&&(y<=z) 】
2、单选题:
能正确表示逻辑关系“a大于等于10或a小于等于0”的C语言表达式是 ( )
选项:
A: a>=10 or a<=0
B: a>=0|a<=10
C: a&g