大学MOOC C语言程序设计(浙大城市学院)217013 最新慕课完整章节测试答案
第2章用C语言编写程序
测验2.1
1、单选题:
下列叙述中错误的是( )。
选项:
A: 计算机不能直接执行用 C 语言编写的源程序
B: C 程序经C 编译程序编译后,生成后缀为.obj 的文件是一个二进制文件
C: 后缀为.obj 的文件,经连接程序生成后缀为.exe 的文件是一个二进制文件
D: 后缀为.obj 和.exe 的二进制文件都可以直接运行
答案: 【 后缀为.obj 和.exe 的二进制文件都可以直接运行】
2、单选题:
下列叙述中正确的是( )。
选项:
A: C 语言程序将从源程序中第一个函数开始执行
B: 可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行
C: C 语言规定必须用 main 作为主函数名,程序将从此开始执行,在此结束
D: main 可作为用户标识符,用以命名任意一个函数作为主函数
答案: 【 C 语言规定必须用 main 作为主函数名,程序将从此开始执行,在此结束】
3、单选题:
以下叙述中正确的是( )。
选项:
A: C 程序中的注释只能出现在程序的开始位置和语句的后面
B: C 程序书写格式严格,要求一行内只能写一个语句
C: C 程序书写格式自由,一个语句可以写在多行上
D: 用 C 语言编写的程序只能放在一个程序文件中
答案: 【 C 程序书写格式自由,一个语句可以写在多行上】
测验2.2
1、单选题:
以下能正确地定义整型变量a,b 和c 并为它们赋初值5 的语句是( )。
选项:
A: int a=b=c=5;
B: int a,b,c=5;
C: a=5,b=5,c=5;
D: int a=5,b=5,c=5;
答案: 【 int a=5,b=5,c=5;】
2、单选题:
经过下列两条语句:int c1=1, c2=2, c3; c3=1.0/c2*c1; 执行后变量c3中的值是( )。
选项:
A: 0
B: 0.5
C: 1
D: 2
答案: 【 0】
测验2.3
1、单选题:
以下程序的功能是输入三个数,比较后输出三个数中的最大值,请在下列选项中挑出正确的语句将程序补充完整。#include <stdio.h>int main(void){ int x,y,z,u,v; scanf(“%d%d%d“,&x,&y,&z) ; if( (1) ) u=x; else u=y; if( (2) ) v=u; else v=z; printf(“%dn”, v); return 0; }
选项:
A: (1) x<y (2) u<z
B: (1) x<y (2) u>z
C: (1) x>y (2) u>z
D: (1) x>y (2) u<z
答案: 【 (1) x>y (2) u>z】
2、填空题:
下列程序段的输出结果 。 int a=1,b=2,c=3;if(c=a) printf("%dn",c);else printf("%dn",b);
答案: 【 1】
测验2.4
1、填空题:
若s的当前值为0,执行循环语句"for(i=1; i<=10; i=i+3) s+=i; "后,i的值为______。
答案: 【 13】
2、填空题:
以下for 语句的循环次数是 次 。 for( x = 0; x<=4 ; x++ ) x=x+1;
答案: 【 3】
3、填空题:
设有int i, j, k; 则执行" for ( i=0, j=10; i<=j; i++, j--) k=i+j; " 循环后k的值为 。
答案: 【 10】
测验2.5
1、单选题:
建立函数的目的之一,下列说法中正确的是( )。
选项:
A: 提高程序的执行效率
B: 提高程序的可读性
C: 减少程序的篇幅
D: 减少程序文件所占内存
答案: 【 提高程序的可读性】
2、单选题:
C语言中有两种类型的函数,分别是( )。
选项:
A: 输入输出函数与数学函数
B: 输入输出函数与自定义函数
C: 标准库函数与数学函数
D: 标准库函数与自定义函数
答案: 【 标准库函数与自定义函数】
第3章分支结构
测验3.1
1、单选题:
以下if-else语句语法正确的是( )。
选项:
A: if(x>0) printf("%f",x)else printf("%f",-x);
B: if(x>0) {x=x+y; printf("%f",x);}esle printf("%f",-x);
C: if(x>0) {x=x+y; printf("%f",x);};else printf("%f",-x);
D: if(x>0) {x=x+y; printf("%f",x)}else printf("%f",x-);
答案: 【 if(x>0) {x=x+y; printf("%f",x);}esle printf("%f",-x);】
2、单选题:
在课本【例2-4】中,如果要增加一个出错处理机制,当输入的用水量x小于0时,打印提示语句"输入数据有误",下列哪个程序段可以正确地使用else-if语句实现该功能?
选项:
A: if(x<=0) printf("输入数据有误n"); else if(x<=15) {y=4*x/3; printf("y=f(%f)=%.2fn",x,y);} else {y=0.25*x-10.5; printf("y=f(%f)=%.2fn",x,y);}
B: if(x<0) printf("输入数据有误n"); else if(0<=x<=15) {y=4*x/3; printf("y=f(%f)=%.2fn",x,y);} else {y=0.25*x-10.5; printf("y=f(%f)=%.2fn",x,y);}
C: if(x<0) printf("输入数据有误n"); else if(x<=15) {y=4*x/3;} else {y=0.25*x-10.5;} printf("y=f(%f)=%.2fn",x,y);
D: if(x<0) printf("输入数据有误n"); else if(x<=15) {y=4*x/3; printf("y=f(%f)=%.2fn",x,y);} else {y=0.25*x-10.5; printf("y=f(%f)=%.2fn",x,y);}
答案: 【 if(x<0) printf("输入数据有误n"); else if(x<=15) {y=4*x/3; printf("y=f(%f)=%.2fn",x,y);} else {y=0.25*x-10.5; printf("y=f(%f)=%.2fn",x,y);}】
3、填空题:
有以下程序段,当输入3 7 1的时候,程序的输出结果是______。 int a,b,c,t; scanf("%d%d%d",&a,&b,&c); if(a<b) {t=a;a=b;b=t;} if(a<c) {t=a;a=c;c=t;} if(b<c) {t=b;b=c;c=t;} printf("%d %d %dn",a,b,c);
答案: 【 7 3 1】
测验3.2
1、单选题:
已知ch是字符型变量,下面不正确的赋值语句是( )。
选项:
A: ch='a+b';
B: ch='#';
C: ch=' ';
D: ch='n';
答案: 【 ch='a+b';】
2、单选题:
下列程序段运行后从键盘输入一个大写字母Q,输出结果是( )。 char ch; ch=getchar( ); ch=ch-'A'+'a'; putchar(ch);
选项:
A: Q
B: q
C: A
D: a
答案: 【 q】
3、单选题:
表示条件10<x<100或者x<0的C语言表达式是( )。
选项:
A: 10<x<100 | x<0
B: 10<x<100 || x<0
C: 10<x && x<100 || x<0
D: 10<x & x<100 | x<0
答案: 【 10<x && x<100 || x<0】
4、填空题:
已知a=7.5,b=2,c=3.6,则表达式a>b&&c>a||a<b&&!c>b的值为 。
答案: 【 假##%_YZPRLFH_%##0##%_YZPRLFH_%##false##%_YZPRLFH_%##FALSE##%_YZPRLFH_%##False】
测验3.3
1、单选题:
下列叙述中正确的是( )。
选项:
A: break 语句只能用于switch 语句
B: 在switch 语句中必须使用defaul
C: break 语句必须与switch 语句中的case 配对使用
D: 在switch 语句中,不一定使用break语句
答案: 【 在switch 语句中,不一定使用break语句】
2、单选题:
下列程序段的输出结果是( )。int main(void){ int x = 1,a = 0,b = 0;switch (x) {case 0: b++;case 1: a++;case 2: a++;b++; }printf("a=%d,b=%dn",a,b); return 0;}
选项:
A: a=2,b=1
B: a=1,b=1
C: a=1,b=0
D: a=2,b=2
答案: 【
