大学MOOC C语言程序设计(郑州工程技术学院)1206784806 最新慕课完整章节测试答案
第一章编程和C语言
单元测验1
1、单选题:
一个C语言程序是由( )。
选项:
A: 一个主程序和若干子程序组成
B: 若干过程组成
C: 函数组成
D: 若干子程序组成
答案: 【 函数组成】
2、单选题:
以下叙述中正确的是( )。
选项:
A: C语言程序将从源程序中第一个函数开始执行
B: 可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行
C: C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束
D: main可作为用户标识符,用以命名任意一个函数作为主函数
答案: 【 C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束】
3、单选题:
对于一个正常运行的C程序,下列叙述中正确的是( )。
选项:
A: 程序的执行总是从main函数开始,在main函数结束
B: 程序的执行总是从程序的第一个函数开始,在main函数结束
C: 程序的执行总是从main函数开始,在程序的最后一个函数中结束
D: 程序的执行总是从程序中的第一个函数开始,在程序的最后一个函数中结束
答案: 【 程序的执行总是从main函数开始,在main函数结束】
4、单选题:
C语言规定,在一个C程序中,main函数的位置( )。
选项:
A: 必须在系统调用的库函数之后
B: 必须在程序的最后
C: 必须在程序的开始
D: 可以在任意位置
答案: 【 可以在任意位置】
5、单选题:
下面说法正确的是( )。
选项:
A: 一个C程序可以有多个主函数
B: 一个C语言的函数中只允许有一对花括号
C: 程序的书写格式是自由的,一个语句可以写在一行上,也可以写在多行内
D: 在对C程序进行编译时,可以发现注释行中的拼写错误
答案: 【 程序的书写格式是自由的,一个语句可以写在一行上,也可以写在多行内】
6、单选题:
C语言的函数体由( )括起来。
选项:
A: < >
B: { }
C: [ ]
D: ( )
答案: 【 { }】
7、单选题:
在C语言中,每个语句和数据定义是用( )结束。
选项:
A: 句号
B: 逗号
C: 分号
D: 括号
答案: 【 分号】
8、单选题:
以下叙述中正确的是( )。
选项:
A: C程序中的注释只能出现在程序的开始位置和语句的后面
B: C程序书写格式严格,要求一行内只能写一个语句
C: C程序书写格式自由,一个语句可以写在多行上
D: 用C语言编写的程序只能放在一个程序文件中
答案: 【 C程序书写格式自由,一个语句可以写在多行上】
9、单选题:
以下叙述中正确的是( )。
选项:
A: C语言比其他语言高级
B: C语言可以不用编译就能被计算机识别执行
C: C语言以接近英语国家的自然语言和数学语言作为语言的表达形式
D: C语言出现的最晚,具有其他语言的一切优点
答案: 【 C语言以接近英语国家的自然语言和数学语言作为语言的表达形式】
10、单选题:
一个C语言程序是由( )。
选项:
A: 一个主程序和若干个子程序组成
B: 函数组成,并且每一个C程序必须且只能由一个主函数
C: 若干过程组成
D: 若干子程序组成
答案: 【 函数组成,并且每一个C程序必须且只能由一个主函数】
11、单选题:
结构化程序设计的基本原则不包括( )。
选项:
A: 多元性
B: 自顶向下
C: 模块化
D: 逐步求精
答案: 【 多元性】
12、单选题:
下面叙述中,( )不是结构化程序设计中的三种基本结构之一。
选项:
A: 数据结构
B: 选择结构
C: 循环结构
D: 顺序结构
答案: 【 数据结构】
13、单选题:
下列叙述中错误的是( )。
选项:
A: C语言是一种结构化程序设计语言
B: 结构化程序由顺序、分支、循环3种基本结构组成
C: 使用3种基本结构构成的程序只能解决简单问题
D: 结构化程序设计提倡模块化的设计方法
答案: 【 使用3种基本结构构成的程序只能解决简单问题】
14、单选题:
下列叙述中错误的是( )。
选项:
A: 计算机不能直接执行用C语言编写的源程序
B: C程序经C编译程序编译后,生成后缀为.obj的文件是一个二进制文件
C: 后缀为.obj的文件,经连接程序生成后缀为.exe的文件是一个二进制文件
D: 后缀为.obj和.exe的二进制文件都可以直接运行
答案: 【 后缀为.obj和.exe的二进制文件都可以直接运行】
15、单选题:
C语言源程序名的后缀是( )。
选项:
A: .exe
B: .c
C: .obj
D: .cpp
答案: 【 .c】
测验
1、单选题:
一个C语言程序是由( )。
选项:
A: 一个主程序和若干个子程序组成
B: 函数组成,并且每一个C程序必须且只能由一个主函数
C: 若干过程组成
D: 若干子程序组成
答案: 【 函数组成,并且每一个C程序必须且只能由一个主函数】
2、单选题:
以下叙述中正确的是( )。
选项:
A: C语言程序将从源程序中第一个函数开始执行
B: 可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行
C: C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束
D: main可作为用户标识符,用以命名任意一个函数作为主函数
答案: 【 C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束】
第二章变量和数据类型
单元测验2
1、单选题:
以下叙述错误的是( )。
选项:
A: C语言区分大小写
B: C程序中的一个变量,代表内存中一个相应的存储单元,变量的值可以根据需要随时修改
C: 整数和实数都能用C语言准确无误地表示出来
D: 在C程序中,正整数可以用十进制、八进制和十六进制的形式来表示
答案: 【 整数和实数都能用C语言准确无误地表示出来】
2、单选题:
下列叙述中错误的是( )。
选项:
A: 用户所定义的标识符允许使用关键字
B: 用户所定义的标识符应尽量做到“见名知意”
C: 用户所定义的标识符必须以字母或下划线开头
D: 用户定义的标识符中,大、小写字母代表不同标识
答案: 【 用户所定义的标识符允许使用关键字】
3、单选题:
以下标识符不是关键字的是( )。
选项:
A: break
B: char
C: Switch
D: return
答案: 【 Switch】
4、单选题:
下面合法的标识符是( )。
选项:
A: 12_3
B: double
C: a.55
D: _abhj
答案: 【 _abhj】
5、单选题:
下列不合法的用户标识符是( )。
选项:
A: j2_KEY
B: Double
C: 4d
D: _8_
答案: 【 4d】
6、单选题:
在C语言中,下列类型属于基本类型的是( )。
选项:
A: 整型、浮点型、字符型
B: 空类型、枚举型
C: 结构体、浮点型
D: 数组、浮点型
答案: 【 整型、浮点型、字符型】
7、单选题:
下列选项中,合法的一组C语言数值常量是( )。
选项:
A: 028 .5e-3 -0xf
B: 12 0xa23 5e0
C: .177 4e1.5 0abc
D: 0x8A 10,000 3.e5
答案: 【 12 0xa23 5e0】
8、单选题:
可在C程序中用作用户标识符的一组标识符是( )。
选项:
A: void define WORD
B: For -abc case
C: as_b3 _123 If
D: 2c DO SIG
答案: 【 as_b3 _123 If】
9、单选题:
以下关于long、int和short类型数据占用内存大小的叙述中正确的是( )。
选项:
A: 均占4个字节
B: 根据数据的大小来决定所占内存的字节数
C: 由用户自己定义
D: 由C语言编译系统决定
答案: 【 由C语言编译系统决定】
10、单选题:
C语言中不能用来表示整常数的进制是( )。
选项:
A: 十进制
B: 十六进制
C: 八进制
D: 二进制
答案: 【 二进制】
11、单选题:
关于字符常量,以下叙述正确的是( )。
选项:
A: 空格不是一个字符常量
B: 字符常量能包含大于一个的字符
C: 单引号中的大写字母和小写字母代表的是相同的字符常量
D: 所有的字符常量都可以作为整型量来处理
答案: 【 所有的字符常量都可以作为整型量来处理】
12、单选题:
以下选项中非法的字符常量是( )。
选项:
A: '\'
B: '201'
C: 'xAA'
D: '0'
答案: 【 '201'】
13、单选题:
在C语言中,回车换行符是( )。
选项:
A: n
B: t
C: v
D: b
答案: 【 n】
14、单选题:
在C语言中,退格符是( )。
选项:
A: n
B: t
C: v
D: b
答案: 【 b】
15、单选题:
以下不正确的转义字符是( )。
选项:
A: \
B: t
C: n
D: 88
答案: 【 88】
16、单选题:
在ASCII码表中可以看到每个小写字母的ASCII码比它相应的大写字母的ASCII码( )。
选项:
A: 大32
B: 大64
C: 小32
D: 小64
答案: 【 大32】
17、单选题:
下列定义变量的语句中错误的是( )。
选项:
A: int _int;
B: char For;
C: double int_;
D: float US$;
答案: 【 float US$;】
18、单选题:
设d为字符变量,下列表达式正确的是( )。
选项:
A: d = 678
B: d = 'a'
C: d = "d"
D: d = 'gjkl'
答案: 【 d = 'a'】
19、单选题:
已知在ASCII字符集中,数字0的序号为48,下面程序的输出结果为( )。#include <stdio.h>int main(){char x, y;x = '0', y = '9';printf("%d, %d", x, y);return 0;}
选项:
A: 因输出格式不合法,输出错误信息
B: 48, 57
C: 0, 9
D: 48, 58
答案: 【 48, 57】
20、单选题:
若要求从键盘读入含有空格字符的字符串,应使用函数( )。
选项:
A: getc()
B: gets()
C: getchar()
D: scanf()
答案: 【 gets()】
21、单选题:
下列叙述中正确的是( )。
选项:
A: 调用printf()函数时,必须要有输出项
B: 使用putchar()函数时,必须在之前包含头文件stdio.h
C: 在C语言中,整数可以以二进制、八进制或十六进制的形式输出
D: 调用getchar()函数读入字符时,可以从键盘上输入字符所对应的ASCII码
答案: 【 使用putchar()函数时,必须在之前包含头文件stdio.h】
22、单选题:
在scanf函数的格式控制中,格式说明的类型与输入的类型应该一一对应匹配。 如果类型不匹配,系统( )。
选项:
A: 不予接收
B: 不给出错误信息,但不可能得出正确信息数据
C: 能接受正确输入
D: 给出错误信息,不予接收输入
答案: 【 不给出错误信息,但不可能得出正确信息数据】
23、单选题:
以下程序的输出结果是( )。#include <stdio.h>int main(){int i = 010, j = 10, k = 0x10;printf("%d, %d, %dn", i, j, k);return 0;}
选项:
A: 8, 10, 16
B: 8, 10, 10
C: 10, 10, 10
D: 10, 10, 16
答案: 【 8, 10, 16】
24、单选题:
语句 printf("abhow'are'y\boun"); 的输出结果是( )。
选项:
A: abhow'are'y\bou
B: how'are'you
C: how'are'you
D: how'are'ybou
答案: 【 how'are'you】
25、单选题:
在printf的格式字符中,e格式字符的作用是( )。
选项:
A: 以十六进制无符号形式输出整数
B: 以带符号的十进制形式输出整数
C: 以指数形式输出浮点数
D: 以字符形式输出,且只输出一个字符
答案: 【 以指数形式输出浮点数】
26、单选题:
若有以下定义(设int类型变量占4个字节)int i = 8, j = 9;则以下语句:printf("i = %%d, j = %%%dn", i, j);输出的结果是( )。
选项:
A: i = 8, j = 9
B: i = %d, j = %d
C: i = %d, j = %8
D: 8, 9
答案: 【 i = %d, j = %8】
27、单选题:
有下列程序:#include <stdio.h>int main(){int m, n, p;scanf("m=%dn=%dp=%d", &m, &n, &p);printf("%d%d%dn", m, n, p); return 0;}若想从键盘上输入数据,使变量m中的值为123,n中的值为456,p中的值为789, 则正确的输入是( )。
选项:
A: m=123n=456p=789
B: m=123, n=456, p=789
C: m=123 n=456 p=789
D: 123 456 789
答案: 【 m=123n=456p=789】
28、单选题:
设有输入语句 scanf("a=%d, b=%d, c=%d", &a, &b, &c); 为使变量a的值为2,b的值为4,c的值为8,则从键盘输入数据的正确形式是( )。
选项:
A: 2, 4, 8<回车>
B: 248<回车>
C: a=2 b=4 c=8<回车>
D: a=2, b=4, c=8<回车>
答案: 【 a=2, b=4, c=8<回车>】
29、单选题:
执行下列程序时输入456<空格>789<空格>123<回车>,输出结果是( )。#include <stdio.h>int main(){char m[80];int c, i;scanf("%c", &c);scanf("%d", &i);scanf( "%s", &m);printf("%c, %d, %sn", c, i, m);return 0;}
选项:
A: 456, 789, 123
B: 4, 56, 789, 123
C: 4, 789, 123
D: 4, 56, 789
答案: 【 4, 56, 789】
30、单选题:
若有double a; 则正确的输入语句是( )。
选项:
A: scanf("%lf", a);
B: scanf("%lf", &a);
C: scanf("%f", &a);
D: scanf("%le", a);
答案: 【 scanf("%lf", &a);】
测验
1、单选题:
在scanf函数的格式控制中,格式说明的类型与输入的类型应该一一对应匹配。 如果类型不匹配,系统( )。
选项:
A: 不予接收
B: 不给出错误信息,但不可能得出正确信息数据
C: 能接受正确输入
D: 给出错误信息,不予接收输入
答案: 【 不给出错误信息,但不可能得出正确信息数据】
2、单选题:
有下列程序:#include <stdio.h>int main(){int m, n, p;scanf("m=%dn=%dp=%d", &m, &n, &p);printf("%d%d%dn", m, n, p); return 0;}若想从键盘上输入数据,使变量m中的值为123,n中的值为456,p中的值为789, 则正确的输入是( )。
选项:
A: m=123n=456p=789
B: m=123, n=456, p=789
C: m=123 n=456 p=789
D: 123 456 789
答案: 【 m=123n=456p=789】
3、单选题:
设有输入语句 scanf("a=%d, b=%d, c=%d", &a, &b, &c); 为使变量a的值为2,b的值为4,c的值为8,则从键盘输入数据的正确形式是( )。
选项:
A: 2, 4, 8<回车>
B: 248<回车>
C: a=2 b=4 c=8<回车>
D: a=2, b=4, c=8<回车>
答案: 【 a=2, b=4, c=8<回车>】
4、单选题:
若有double a; 则正确的输入语句是( )。
选项:
A: scanf("%lf", a);
B: scanf("%lf", &a);
C: scanf("%f", &a);
D: scanf("%le", a);
答案: 【 scanf("%lf", &a);】
第三章运算符与表达式
单元测验3
1、单选题:
设d为字符变量,下列表达式正确的是( )。
选项:
A: d = 678
B: d = 'a'
C: d = "d"
D: d = 'gjkl'
答案: 【 d = 'a'】
2、单选题:
10 + 'a' +1.5 – 567.345 / 'b' 的结果是( )型数据。
选项:
A: long
B: double
C: int
D: unsigned float
答案: 【 double】
3、单选题:
C语言中,运算对象必须是整型数的运算符是( )。
选项:
A: %
B: /
C: % 和 /
D: *
答案: 【 %】
4、单选题:
已知int a = 6; 则执行a += a -= a * a; 语句后,a的值为( )。
选项:
A: 36
B: 0
C: -24
D: -60
答案: 【 -60】
5、单选题:
若有定义:int a = 7; float x = 2.5, y = 4.7; 则表达式x + a % 3 * (int)(x + y) % 2 / 4 的值是( )。
选项:
A: 2.500000
B: 2.750000
C: 3.500000
D: 0.000000
答案: 【 2.500000】
6、单选题:
设a和b均为int型变量,且a = 6,b = 11,则能使值为3的表达式是( )。
选项:
A: b % (a % 4)
B: b % (a - a% 5)
C: b % a - a % 5
D: (b % a) - (a % 4)
答案: 【 (b % a) - (a % 4)】
7、单选题:
假设所有变量均为整型,则表达式(a = 5, b = 2, a++, a + b)的值是( )。
选项:
A: 8
B: 7
C: 6
D: 5
答案: 【 8】
8、单选题:
若a、b、c、d都是int型变量且都已经正确赋初值,则以下不正确的赋值语句是( )。
选项:
A: a + d;
B: a = b = c = d = 100;
C: a++;
D: a = (b = 3) + (d = 5);
答案: 【 a + d;】
9、单选题:
若变量均已正确定义并赋值,以下合法的C语言赋值语句是( )。
选项:
A: x = y == 5;
B: x + n = 1;
C: x = n % 2.5;
D: x = 5 = 4 + 1;
答案: 【 x = y == 5;】
10、单选题:
若有如下定义:int a, b; float x; 则正确的赋值语句为( )。
选项:
A: a = 1 + b = 2;
B: b++;
C: a = b = 5;
D: b = int(x);
答案: 【 a = b = 5;】
11、单选题:
若有如下定义:int a = 2, b = 3; float x = 3.5, y = 2.5; 则表达式:(float)(a + b) / 2 + (int)x % (int)y 的值是( )。
选项:
A: 2.500000
B: 3.500000
C: 4.500000
D: 5.000000
答案: 【 3.500000】
12、单选题:
若有:int a, b = 2; a = (b * 100 + 1.5, 100) 则a的值是( )。
选项:
A: 100
B: 100.5
C: 200.5
D: 300.5
答案: 【 100】
13、单选题:
设x、y均为float型变量,则以下不合法的赋值语句是( )。
选项:
A: ++x;
B: y = (x % 2) / 10;
C: x *= y + 8;
D: x = y = 0;
答案: 【 y = (x % 2) / 10;】
14、单选题:
设整型变量a值为9,则下列表达式中使b的值不为4的表达式:( )。
选项:
A: b = a / 2
B: b = a % 2
C: b = 8 - (3, a - 5)
D: b = a > 5 ? 4 : 2
答案: 【
