大学MOOC C语言程序设计(盐城师范学院)1206550808 最新慕课完整章节测试答案
第一章程序设计与C语言
测试1
1、单选题:
以下叙述中错误的是 。
选项:
A: C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令
B: C程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令文件
C: 用C语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件中
D: C语言源程序经编译后生成后缀为.obj的目标程序
答案: 【 C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令】
2、单选题:
以下叙述中错误的是 。
选项:
A: 使用三种基本结构构成的程序只能解决简单问题
B: 结构化程序由顺序、分支、循环三种基本结构组成
C: C语言是一种结构化程序设计语言
D: 结构化程序设计提倡模块化的设计方法
答案: 【 使用三种基本结构构成的程序只能解决简单问题】
3、单选题:
下列叙述中错误的是 。
选项:
A: C程序可以由多个程序文件组成
B: 一个C语言程序只能实现一种算法
C: C程序可以由一个或多个函数组成
D: 一个C函数可以单独作为一个C程序文件存在
答案: 【 一个C语言程序只能实现一种算法】
4、单选题:
以下关于结构化程序设计的叙述中正确的是 。
选项:
A: 结构化程序使用goto语句会很便捷
B: 在C语言中,程序的模块化是利用函数实现的
C: 一个结构化程序必须同时由顺序、分支、循环三种结构组成
D: 由三种基本结构构成的程序只能解决小规模的问题
答案: 【 在C语言中,程序的模块化是利用函数实现的】
5、单选题:
对于一个正常运行的C程序,以下叙述中正确的是 。
选项:
A: 程序的执行总是从main函数开始,在程序的最后一个函数中结束
B: 程序的执行总是从程序的第一个函数开始, 在main函数结束
C: 程序的执行总是从main函数开始
D: 程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束
答案: 【 程序的执行总是从main函数开始】
6、单选题:
计算机能直接执行的程序是 。
选项:
A: 源程序
B: 目标程序
C: 汇编程序
D: 可执行程序
答案: 【 可执行程序】
7、单选题:
以下叙述中正确的是 。
选项:
A: C语言规定必须用main作为主函数名,程序将从此开始执行
B: 可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行
C: C语言程序将从源程序中第一个函数开始执行
D: main的各种大小写拼写形式都可以作为主函数名,如:MAIN,Main等
答案: 【 C语言规定必须用main作为主函数名,程序将从此开始执行】
8、单选题:
以下叙述中正确的是 。
选项:
A: C语句必须在一行内写完
B: C程序中的每一行只能写一条语句
C: C语言程序中的注释必须与语句写在同一行
D: 简单C语句必须以分号结束
答案: 【 简单C语句必须以分号结束】
9、单选题:
下列叙述中错误的是 。
选项:
A: C程序可以由多个程序文件组成
B: 一个C语言程序只能实现一种算法
C: C程序可以由一个或多个函数组成
D: 一个C函数可以单独作为一个C程序文件存在
答案: 【 一个C语言程序只能实现一种算法】
10、单选题:
C语言源程序名的后缀是 。
选项:
A: .C
B: .exe
C: .obj
D: .cp
答案: 【 .C 】
11、单选题:
我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令。关于转换以下说法错误的是 。
选项:
A: 一条C语句可能会被转换成零条机器指令
B: 一条C语句可能会被转换成多条机器指令
C: 一条C语句对应转换成一条机器指令
D: 某种类型和格式的C语句被转换成机器指令的条数是固定的
答案: 【 一条C语句对应转换成一条机器指令 】
12、单选题:
C语言程序的模块化通过以下哪个选项来实现 。
选项:
A: 变量
B: 函数
C: 程序行
D: 语句
答案: 【 函数】
13、单选题:
以下叙述中正确的是 。
选项:
A: 书写源程序时,必须注意缩进格式,否则程序会有编译错误
B: 程序的主函数名除main外,也可以使用Main或_main
C: 程序可以包含多个主函数,但总是从第一个主函数处开始执行
D: 在C程序中,模块化主要是通过函数来实现的
答案: 【 在C程序中,模块化主要是通过函数来实现的】
14、单选题:
以下叙述中正确的是 。
选项:
A: C语言程序所调用的函数必须放在main函数的前面
B: C语言程序总是从最前面的函数开始执行
C: C语言程序中main函数必须放在程序的开始位置
D: C语言程序总是从main函数开始执行
答案: 【 C语言程序总是从main函数开始执行】
15、单选题:
以下叙述中错误的是 。
选项:
A: 书写风格良好的程序执行效率高
B: 书写风格良好的程序易读性好
C: C程序可以在一行上写多条语句
D: C程序允许将一条语句分写在多行上
答案: 【 书写风格良好的程序执行效率高】
第二章算法——程序的灵魂
第二章算法
1、单选题:
下列叙述中错误的是 。
选项:
A: C程序可以由多个程序文件组成
B: 一个C语言程序只能实现一种算法
C: C程序可以由一个或多个函数组成
D: 一个C函数可以单独作为一个C程序文件存在
答案: 【 一个C语言程序只能实现一种算法】
2、单选题:
以下叙述中错误的是 。
选项:
A: 使用三种基本结构构成的程序只能解决简单问题
B: 结构化程序由顺序、分支、循环三种基本结构组成
C: C语言是一种结构化程序设计语言
D: 结构化程序设计提倡模块化的设计方法
答案: 【 使用三种基本结构构成的程序只能解决简单问题】
3、单选题:
以下关于结构化程序设计的叙述中正确的是 。
选项:
A: 结构化程序使用goto语句会很便捷
B: 在C语言中,程序的模块化是利用函数实现的
C: 一个结构化程序必须同时由顺序、分支、循环三种结构组成
D: 由三种基本结构构成的程序只能解决小规模的问题
答案: 【 在C语言中,程序的模块化是利用函数实现的】
4、单选题:
以下叙述中错误的是
选项:
A: 算法正确的程序可以有零个输入
B: 算法正确的程序最终一定会结束
C: 算法正确的程序可以有零个输出
D: 算法正确的程序对于相同的输入一定有相同的结果
答案: 【 算法正确的程序可以有零个输出 】
5、单选题:
以下选项中关于程序模块化的叙述错误的是 。
选项:
A: 可采用自底向上、逐步细化的设计方法把若干独立模块组装成所要求的程序
B: 把程序分成若干相对独立、功能单一的模块,可便于重复使用这些模块
C: 把程序分成若干相对独立的模块,可便于编码和调试
D: 可采用自顶向下、逐步细化的设计方法把若干独立模块组装成所要求的程序
答案: 【 可采用自底向上、逐步细化的设计方法把若干独立模块组装成所要求的程序】
6、单选题:
关于算法,以下叙述中错误的是 。
选项:
A: 某个算法可能会没有输入
B: 某个算法可能会有多个输入
C: 一个算法对于某个输入的循环次数是可以事先估计出来的
D: 任何算法都能转换成计算机高级语言的程序,并在有限时间内运行完毕
答案: 【 任何算法都能转换成计算机高级语言的程序,并在有限时间内运行完毕】
7、单选题:
以下叙述中正确的是 。
选项:
A: N-S流程图只能描述简单的顺序结构的程序
B: 程序的算法只能使用流程图来描述
C: 结构化程序的三种基本结构是循环结构、选择结构、顺序结构
D: 计算机可以直接处理C语言程序,不必进行任何转换
答案: 【 结构化程序的三种基本结构是循环结构、选择结构、顺序结构】
8、单选题:
以下叙述中正确的是 。
选项:
A: 程序必须包含所有三种基本结构才能成为一种算法
B: 我们所写的每条C执行语句,经过编译最终都将转换成二进制的机器指令
C: 如果算法非常复杂,则需要使用三种基本结构之外的语句结构,才能准确表达
D: 只有简单算法才能在有限的操作步骤之后结束
答案: 【 我们所写的每条C执行语句,经过编译最终都将转换成二进制的机器指令】
9、单选题:
以下叙述中正确的是 。
选项:
A: 在算法设计时,可以把复杂任务分解成一些简单的子任务
B: 在C语言程序设计中,所有函数必须保存在一个源文件中
C: 只要包含了三种基本结构的算法就是结构化程序
D: 结构化程序必须包含所有的三种基本结构,缺一不可
答案: 【 在算法设计时,可以把复杂任务分解成一些简单的子任务】
10、单选题:
流程图是描述算法的很好的工具,一般的流程图中由几种基本图形组成。其中输入输出框的图形是 。
选项:
A: 平行四边形
B: 长方形
C: 椭圆型
D: 菱形
答案: 【 平行四边形 】
11、单选题:
流程图是描述算法的很好的工具,一般的流程图中由几种基本图形组成。其中判断框的图形是 。
选项:
A: 菱形
B: 长方形
C: 平行四边形
D: 椭圆型
答案: 【 菱形 】
12、单选题:
以下选项中叙述正确的是 。
选项:
A: 结构化程序的三种基本结构是循环结构、选择结构、顺序结构
B: C语言源程序不编译也能直接运行
C: 使用N-S流程图不能描述复杂算法
D: 计算机能够直接运行C语言源程序,不必进行任何转换
答案: 【 结构化程序的三种基本结构是循环结构、选择结构、顺序结构】
13、单选题:
以下选项中叙述正确的是 。
选项:
A: 使用三种基本结构就可以实现任何复杂算法
B: 只要程序包含了三种基本结构中的任意一种,就是结构化程序
C: 程序语法错误要在运行时才能发现
D: C语言程序不需要包含main( )函数
答案: 【 使用三种基本结构就可以实现任何复杂算法】
14、单选题:
以下选项中叙述正确的是 。
选项:
A: C程序中的语句要经过编译才能转换成二进制机器指令
B: 算法需要包含所有三种基本结构
C: 有些算法不能用三种基本结构来表达
D: 简单算法的操作步骤不能超过20步
答案: 【 C程序中的语句要经过编译才能转换成二进制机器指令】
15、单选题:
以下选项中叙述正确的是 。
选项:
A: 复杂任务可以分解成简单子任务
B: C语言程序中的所有函数必须保存在同一个源文件中
C: 全部三种基本结构都包含的才是结构化程序
D: C语言程序可以定义多个不同内容的main函数
答案: 【 复杂任务可以分解成简单子任务 】
16、单选题:
结构化程序由顺序、选择、循环三种基本结构组成,以下相关叙述错误的是 。
选项:
A: 三种基本结构不可以嵌套使用
B: 顺序结构是按语句在程序中的先后顺序逐条执行,没有分支,没有转移
C: 选择结构是根据不同的条件执行不同分支中的语句
D: 循环结构是根据条件决定是否重复、重复执行多少次循环体语句
答案: 【 三种基本结构不可以嵌套使用】
17、单选题:
算法具有五个特性,下列选项中不属于算法特性的是( )。
选项:
A: 简洁性
B: 有穷性
C: 确定性
D: 有效性
答案: 【 简洁性 】
第三章最简单的C程序设计——顺序程序设计
第三章数据类型测试
1、单选题:
以下选项中,合法的一组C语言数值常量是 。
选项:
A: 12. 0Xa23 4.5e0
B: 028 .5e-3 -0xf
C: .177 4e1.5 0abc
D: 0x8A 10,000 3.e5
答案: 【 12. 0Xa23 4.5e0 】
2、单选题:
以下选项中不合法的标识符是 。
选项:
A: &a
B: FOR
C: print
D: _00
答案: 【 &a 】
3、单选题:
若有代数式
(其中e仅代表自然对数的底数,不是变量),则以下能够正确表示该代数式的C语言表达式是 。
选项:
A: sqrt(fabs(pow(n,x)+exp(x)))
B: sqrt(fabs(pow(n,x)+pow(x,e)))
C: sqrt(abs(n^x+e^x))
D: sqrt(fabs(pow(x,n)+exp(x)))
答案: 【 sqrt(fabs(pow(n,x)+exp(x))) 】
4、单选题:
以下选项中,能用作数据常量的是 。
选项:
A: 115L
B: 0118
C: 1.5e1.5
D: o115
答案: 【 115L 】
5、单选题:
按照C语言规定的用户标识符命名规则,不能出现在标识符中的是 。
选项:
A: 大写字母
B: 下划线
C: 数字字符
D: 连接符
答案: 【 连接符】
6、单选题:
设变量已正确定义并赋值,以下正确的表达式是 。
选项:
A: x=y+z+5, ++y
B: int(15.8%5)
C: x=y*5=x+z
D: x=25%5.0
答案: 【 x=y+z+5, ++y 】
7、单选题:
设有定义:int x=2;,以下表达式中,值不为6的是 。
选项:
A: 2*x,x+=2
B: x++,2*x
C: x*=(1+x)
D: x*=x+1
答案: 【 2*x,x+=2 】
8、单选题:
以下选项中,能用作用户标识符的是 。
选项:
A: _0
B: 8_8
C: void
D: unsigned
答案: 【 _0 】
9、单选题:
若有定义语句:int x=10; ,则表达式x-=x+x的值为 。
选项:
A: 0
B: -20
C: -10
D: 10
答案: 【 -10 】
10、单选题:
以下选项中能表示合法常量的是 。
选项:
A: 1.5E2.0
B: 1,200
C: ''
D: "07"
答案: 【 "07"】
11、单选题:
若变量x、y已正确定义并赋值,以下符合C语言语法的表达式是 。
选项:
A: x+1=y
B: ++x,y=x--
C: x=x+10=x+y
D: double(x)/10
答案: 【 ++x,y=x-- 】
12、单选题:
以下选项中可用作C程序合法实数的是 。
选项:
A: 3.0e0.2
B: .1e0
C: E9
D: 9.12E
答案: 【 .1e0 】
13、单选题:
下列定义变量的语句中错误的是 。
选项:
A: int _int;
B: double int_;
C: char For;
D: float US$;
答案: 【 float US$;】
14、单选题:
表达式:(int)((double)9/2)- 9%2 的值是 。
选项:
A: 0
B: 3
C: 4
D: 5
答案: 【 3 】
15、单选题:
以下选项中关于C语言常量的叙述错误的是 。
选项:
A: 经常被使用的变量可以定义成常量
B: 常量分为整型常量、实型常量、字符常量和字符串常量
C: 常量可分为数值型常量和非数值型常量
D: 所谓常量,是指在程序运行过程中,其值不能被改变的量
答案: 【 经常被使用的变量可以定义成常量 】
16、单选题:
以下选项中,不合法的C语言用户标识符是
选项:
A: a_b
B: AaBc
C: a--b
D: _1
答案: 【 a--b 】
17、单选题:
定义:int k=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是 。
选项:
A: ++k
B: k+=1
C: k++
D: k+1
答案: 【 k++】
18、单选题:
以下不合法的字符常量是
选项:
A: '\'
B: '"'
C: '18'
D: 'xcc'
答案: 【 '18' 】
19、单选题:
以下选项中正确的定义语句是
选项:
A: double, a, b;
B: double a=b=7;
C: double a; b;
D: double a=7, b=7;
答案: 【 double a=7, b=7;】
20、单选题:
若有定义语句:int a=3,b=2,c=1; ,以下选项中错误的赋值表达式是
选项:
A: a=(b=4)=3
B: a=b=c+1
C: a=(b=4) +c
D: a=1+(b=c=4)
答案: 【 a=(b=4)=3】
21、单选题:
以下选项中不能用作C程序合法常量的是
选项:
A: 123
B: '123'
C: 1,234
D: "x7D"
答案: 【 1,234】
22、单选题:
表达式 a+=a -= a=9 的值是
选项:
A: 18
B: -9
C: 0
D: 9
答案: 【 0】
23、单选题:
若有定义语句:int x=12, y=8, z;,在其后执行语句: z= 0.9+x/y;,则z的值为
选项:
A: 1
B: 1.9
C: 2
D: 2.4
答案: 【 1】
24、单选题:
已知大写字母A的ASCII码是65,小写字母a的ASCII码是97。以下不能将变量c中的大写字母转换为对应小写字母的语句是
选项:
A: c=('A'+c)%26-'a'
B: c=c+32
C: c=c-'A'+'a'
D: c=(c-'A')%26 +'a'
答案: 【 c=('A'+c)%26-'a' 】
25、单选题:
以下选项中,值为1的表达式是
选项:
A: 1 -'0'
B: 1 - ''
C: '1' -0
D: '' - '0'
答案: 【 1 - '' 】
26、单选题:
关于C语言的变量,以下叙述中错误的是 。
选项:
A: 变量所占的存储单元地址可以随时改变
B: 所谓变量是指在程序运行过程中其值可以被改变的量
C: 程序中用到的所有变量都必须先定义后才能使用
D: 由三条下划线构成的符号名是合法的变量名
答案: 【 变量所占的存储单元地址可以随时改变】
27、单选题:
若有定义语句: char c='101';,则变量c在内存中占 。
选项:
A: 1个字节
B: 2个字节
C: 3个字节
D: 4个字节
答案: 【 1个字节】
28、单选题:
以下叙述中正确的是 。
选项:
A: a是实型变量,a=10在C语言中是允许的,因此可以说:实型变量中可以存放整型数
B: 在赋值表达式中,赋值号的右边可以是变量,也可以是任意表达式
C: 若有int a=4,b=9; 执行了a=b后,a的值已由原值改变为b的值,b的值变为0
D: 若有int a=4,b=9; 执行了a=b;b=a;之后,a的值为9,b的值为4
答案: 【 在赋值表达式中,赋值号的右边可以是变量,也可以是任意表达式】
29、单选题:
以下叙述中正确的是 。
选项:
A: C语言中的关键字不能作变量名,但可以作为函数名
B: 标识符的长度不能任意长,最多只能包含16个字符
C: 标识符总是由字母、数字和下划线组成,且第一个字符不得为数字
D: 用户自定义的标识符必须"见名知义",如果随意定义,则会出编译错误
答案: 【 标识符总是由字母、数字和下划线组成,且第一个字符不得为数字】
30、单选题:
sizeof( double )是 。
选项:
A: 一个整型表达式
B: 一个双精度型表达式
C: 一个不合法的表达式
D: 一种函数调用
答案: 【 一个整型表达式】
第三章顺序结构设计测试
1、单选题:
1.若变量已正确定义为int型,要通过语句: scanf("%d,%d,%d",&a,&b,&c); 给a赋值1、给b赋值2、给c赋值3,以下输入形式中错误的是(注:□代表一个空格符) 。
选项:
A: 1,2,3<回车>
B: □□□1,2,3 <回车>
C: 1,□□□2,□□□3<回车>
D: 1□2□3<回车>
答案: 【 1□2□3<回车>】
2、单选题:
有以下定义语句,编译时会出现编译错误的是
选项:
A: char a='x2d'
B: char a='n'
C: char a='a'
D:
