大学MOOC C语言程序设计(南京大学金陵学院)1454519163 最新慕课完整章节测试答案
第一周 C语言快速入门
文章目录
第1周 单元测验
1、单选题:
下列描述中,正确的是( )
选项:
A: 程序和软件定义一样
B: 软件开发不受计算机系统的限制
C: 软件既是逻辑实体,又是物理实体
D: 软件是程序、数据与相关文档的集合
答案: 【 软件是程序、数据与相关文档的集合】
2、单选题:
以下叙述不正确的是( )
选项:
A: 一个C程序可由一个或多个函数组成
B: C程序的基本组成单位是函数
C: 一个C程序必须包含一个main函数
D: #include<stdio.h> 是C语言的一条语句
答案: 【 #include<stdio.h> 是C语言的一条语句】
3、单选题:
以下哪个不是算法的性质( )
选项:
A: 输入性
B: 输出性
C: 确定性
D: 正确性
答案: 【 正确性】
4、单选题:
C语言规定,在一个源程序中,main函数的位置( )
选项:
A: 必须在最前面
B: 必须在系统调用的库函数的后面
C: 可以任意
D: 必须在最后
答案: 【 可以任意】
5、单选题:
一个C程序的执行是从( )
选项:
A: 从本程序文件的第一个函数开始,到本程序文件的main函数结束
B: 从本程序的main程序开始,到本文件的最后一个函数结束
C: 从本程序的main函数开始,到本程序的main函数结束
D: 从本程序的第一个函数开始,到本文件的最后一个函数结束
答案: 【 从本程序的main函数开始,到本程序的main函数结束】
6、单选题:
下列选项中全属于应用软件的是( )
选项:
A: UNIX、DOS
B: Photoshop、QQ
C: Windows、Microsoft Visual Studio
D: DevC++、Linux
答案: 【 Photoshop、QQ】
7、单选题:
下列选项不属于高级程序设计语言的是( )
选项:
A: C
B: Java
C: Python
D: 汇编语言
答案: 【 汇编语言】
8、单选题:
下列哪一个不是算法的描述形式( )
选项:
A: 传统流程图
B: N-S流程图
C: 公式法
D: 程序设计语言
答案: 【 公式法】
9、单选题:
以下哪项不是算法设计追求的目标( )
选项:
A: 正确性
B: 健壮性
C: 可执行性
D: 可读性
答案: 【 可执行性】
10、单选题:
以下哪个不是C语言的特点( )
选项:
A: 具有较好的可移植性
B: 可直接对硬件进行操作
C: 灵活性
D: 属于面向对象编程语言
答案: 【 属于面向对象编程语言】
第2周 顺序结构程序设计
第2周单元测验
1、单选题:
以下能作为自定义标识符的是( )
选项:
A: double_2
B: a-3
C: 3class
D: return
答案: 【 double_2】
2、单选题:
以下正确的变量定义语句是( )
选项:
A: int a;b
B: int a=b=2;
C: float f=3.2f,b=3.1,
D: double a,b=3.2;
答案: 【 double a,b=3.2;】
3、单选题:
下列选项中,合法的C语言关键字是( )
选项:
A: Return
B: integer
C: char
D: IF
答案: 【 char】
4、单选题:
下列选项中,正确的C语句是( )
选项:
A: int a=b=8;
B: #define N 5
C: const int a=5;
D: #define PI 3.14;
答案: 【 const int a=5;】
5、单选题:
下列选项中,哪项是正确的浮点型常量( )
选项:
A: 123
B: 1E2.2
C: e2
D: 123.0
答案: 【 123.0】
6、单选题:
以下程序段的运行结果是( )int a=3,b=5; printf("a=%d b=%d",a,b);
选项:
A: a=3,b=5
B: 3,5
C: a=3 b=5
D: a=3;b=5
答案: 【 a=3 b=5】
7、单选题:
如下语句,要求从键盘输入3.14159和5.3分别保存到变量f1和f2中,↙ 表示回车键,正确的输入格式是( )float f1,f2;scanf("%f,%f",&f1,&f2);
选项:
A: 3.14159 5.3↙
B: 3.14159 , 5.3↙
C: 3.14159 ; 5.3↙
D: 3.14159↙ 5.3↙
答案: 【 3.14159 , 5.3↙ 】
8、单选题:
如下语句的输出结果是( )float f1=3.14159f;printf("f1=%.4f",f1);
选项:
A: f1=3.1415
B: f1=3.14159
C: f1=3.1416
D: 3.1415
答案: 【 f1=3.1416】
9、单选题:
以下选项中,正确的输入格式是( )
选项:
A: int a;scanf("%d",a);
B: int a;scanf("%d,"&a);
C: int a;scanf("%f,"&a);
D: int a;scanf("%d",&a);
答案: 【 int a;scanf("%d",&a);】
10、单选题:
已知有定义语句,int a=3,b=5; 以下正确的输出格式是( )
选项:
A: printf("%d",a,b);
B: printf("%d%d",a、b);
C: printf("%d %d",a,b);
D: printf("a=%d,b=%d";a,b);
答案: 【 printf("%d %d",a,b);】
第3周 字符型 及 运算符和表达式
第3周 单元测验
1、单选题:
设有定义语句 int a=5,b; 则以下语句中与b=++a;等价的语句是( )
选项:
A: b=a;++a;
B: ++a;b=a;
C: b=a+1;a=a;
D: b=a;a=a+1;
答案: 【 ++a;b=a;】
2、单选题:
设有定义语句 int a=5,b; 则以下语句中与b=a++;等价的语句是( )
选项:
A: a++;b=a;
B: b=a;a=a;
C: ++a;b=a;
D: b=a;a++;
答案: 【 b=a;a++;】
3、单选题:
设 int a,b; 则a=2,b=a+7%2的值是( )
选项:
A: 1
B: 3
C: 4
D: 5
答案: 【 3】
4、单选题:
int a = 0, b = 2, c;c = a && ++b;printf("a=%d,b=%d,c=%dn",a,b,c);执行以上语句的输出结果为( )
选项:
A: 0,2,0
B: a=0,b=3,c=0
C: 0 3 0
D: a=0,b=2,c=0
答案: 【 a=0,b=2,c=0】
5、单选题:
int a = 1, b = 2, c;c = --a || ++b;printf("%d,%d,%dn",a,b,c);执行以上语句的输出结果为( )
选项:
A: 0,2,1
B: a=0,b=3,c=1
C: 0,3,1
D: 0,3,0
答案: 【 0,3,1】
6、判断题:
9%2.0的运行结果为其余数1
选项:
A: 正确
B: 错误
答案: 【 错误】
7、判断题:
算术运算符的优先级一定高于逻辑运算符
选项:
A: 正确
B: 错误
答案: 【 错误】
8、判断题:
设有 int a = 2,b = 3, c; 则执行 c = (a+b)++; 后 c的值为6。
选项:
A: 正确
B: 错误
答案: 【 错误】
9、填空题:
设int a=0,b=1; 则表达式(++a || --b)的值是( )。
答案: 【 1】
10、填空题:
设int a=0,b=1; 执行表达式(++a || --b)后,b的值是( )。
答案: 【 1】
第8周 数组1
第8周 单元测验
1、单选题:
如下正确的数组定义格式是
选项:
A: int a[];
B: int a[]=3;
C: int a[5];
D: int []=5;
答案: 【 int a[5];】
2、单选题:
已知int a[10];如下对数组元素引用正确的是
选项:
A: int a[2]=3;
B: a[10]=8;
C: a[]=2;
D: scanf("%d",&a[3]);
答案: 【 scanf("%d",&a[3]);】
3、单选题:
以下对数组元素赋值正确的是
选项:
A: int a[5];a[5]={1,2,3,4,5};
B: int a[5]={0,1,2,3,4,5};
C: int a[]={0,1,2,3,4,5};
D: int a[5]={1,2.0,4.5,8,9};
答案: 【 int a[]={0,1,2,3,4,5};】
4、单选题:
int a[5],i;以下代码能实现输入5个整型数保存到数组的是
选项:
A: for(i=1;i<=5;i++) scanf("%d",&a[i]);
B: for(i=1;i<5;i++) scanf("%d",a[i]);
C: for(i=0;i<5;i++) scanf("%d",&a[i]);
D: for(i=0;i<5;i++) printf("%d",a[i]);
答案: 【 for(i=0;i<5;i++) scanf("%d",&a[i]);】
5、单选题:
int a[6]={1,1},i;for(i=2;i<6;i++) a[i]=a[i-1]+a[i-2];执行完以上代码后,数组a中的内容为
选项:
A: 1 1 2 3 4 5
B: 1 1 2 3 5 8
C: 1 1 2 3 5
D: 2 3 5 8 13
答案: 【 1 1 2 3 5 8】
6、多选题:
int a[5]={1,0,3,4,-2};以下正确的打擂台算法求最小值的是
选项:
A: int min,i;for(i=0;i<5;i++) if(a[i]<min) min=a[i];
B: int min=a[0],i;for(i=0;i<5;i++) if(a[i]<min) min=a[i];
C: int min=a[1],i;for(i=0;i<5;i++) if(a[i]>min) min=a[i];
D: int min=a[0],i;for(i=1;i<5;i++) if(a[i]<min) min=a[i];
答案: 【 int min=a[0],i;for(i=0;i<5;i++) if(a[i]<min) min=a[i];;
int min=a[0],i;for(i=1;i<5;i++) if(a[i]<min) min=a[i];】
7、多选题:
int a[5]={3,1,4,-5,7},i,j,t;以下按升序对数组a进行排序的代码段是
选项:
A: for(i=0;i<5;i++){ for(j=0;j<5-i;j++) if(a[j]>a[j+1]) { t=a[j]; a[j]=a[j+1]; a[j+1]=t; }}
B: for(i=0;i<5-1;i++){ for(j=0;j<5-1-i;j++) if(a[j]>a[j+1]) { t=a[j]; a[j]=a[j+1]; a[j+1]=t; }}
C: int flag;for(i=0;i<5-1;i++){ flag = 0; for(j=0;j<5-1-i;j++) if(a[j]>a[j+1]) { t=a[j]; a[j]=a[j+1]; a[j+1]=t; } if(flag==0) break;}
D: for(i=0;i<5-1;i++) //N-1趟{ for(j=5-1;j>i;j--) //从后往前两两比较 if(a[j]<a[j-1]) //如果当前位置比其前一个还小,则交换,即把小的往前挪 {
