MOOC C语言程序设计(杨桂华)(桂林理工大学)1452089168 最新慕课完整章节测试答案
第1周---初识C语言-从简单程序开始
文章目录
本节小测验
1、判断题:
C语言不区分字母大小写。
选项:
A: 正确
B: 错误
答案: 【 错误】
2、判断题:
"stdio.h " 在C程序中表示标准的输入输出头文件。
选项:
A: 正确
B: 错误
答案: 【 正确】
3、判断题:
用户自定义函数可以调用主函数main()。
选项:
A: 正确
B: 错误
答案: 【 错误】
4、判断题:
C语言中语句结束的标志是句号。
选项:
A: 正确
B: 错误
答案: 【 错误】
5、填空题:
C语言中,语句结束的标志是( )。
答案: 【 分号 ;】
6、填空题:
C 语言中格式化输入函数是( )。
答案: 【 scanf( )】
7、填空题:
在C语言中,( )表示表示“以十进制整数的形式输出/输入”。
答案: 【 %d】
8、填空题:
在C语言中,用( )符号引起来的表示字符串常量。
答案: 【 " " ""】
9、填空题:
int age; &age表示取得变量age在内存中的( )。
答案: 【 地址】
章节小测试
1、单选题:
printf()函数的作用是( )。
选项:
A: 具有数据的输入功能
B: 具有数据的输出功能
C: 具有数据的转换功能
D: 具有输入和输出功能
答案: 【 具有数据的输出功能】
2、判断题:
main()函数在C程序只能出现一次。
选项:
A: 正确
B: 错误
答案: 【 正确】
3、填空题:
C程序中的注释通常有两种分别是( )和( )。
答案: 【 // /* */】
第一周测验
1、单选题:
对于一个正常运行的C程序,以下叙述中正确的是( )。
选项:
A: 程序的执行总是从main函数开始,在main函数结束
B: 程序的执行总是从程序的一个函数开始,在main函数结束
C: 程序的执行总是从main函数开始,在程序最后一个函数结束
D: 程序的执行总是从程序的第一个函数开始,在程序最后一个函数结束
答案: 【 程序的执行总是从main函数开始,在main函数结束】
2、单选题:
( )是构成C语言程序的基本单位。
选项:
A: 语句
B: 函数
C: 文件
D: 注释
答案: 【 函数】
3、单选题:
下列关于C语言的说法错误的是( )。
选项:
A: C程序基本实现步骤需要编辑、编译、连接、运行
B: C语言不区分大小写
C: C程序的三种基本结构是顺序、选择、循环
D: C程序从main函数开始执行
答案: 【 C语言不区分大小写】
4、单选题:
以下叙述不正确的是( )。
选项:
A: 一个C源程序可由一个或多个函数组成
B: 一个C源程序必须包含一个main函数
C: C程序的基本组成单位是函数
D: 在C程序中,注释说明只能位于一条语句的后面
答案: 【 在C程序中,注释说明只能位于一条语句的后面】
5、单选题:
以下选项中非法的标示符的是( )。
选项:
A: x1_y2
B: int
C: _345
D: MKs
答案: 【 int】
6、单选题:
下列说法中正确的是( )。
选项:
A: C程序书写时,一行只能写一个语句
B: C程序书写时,不区分大小写字母
C: C程序书写时每行必须对齐
D: C程序书写时,一个语句可分成几行书写
答案: 【 C程序书写时,一个语句可分成几行书写】
7、单选题:
C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符( )。
选项:
A: 必须为下划线
B: 必须为字母或下划线
C: 必须为字母
D: 可以是字母、数字和下划线中的任一种字符
答案: 【 必须为字母或下划线】
8、单选题:
以下叙述正确的是( )。
选项:
A: 在C程序中,main函数必须出现在程序的最前面
B: 在对一个C程序进行编译的过程中,注释也参与编译
C: C语言本身没有输入输出语句
D: C程序的每行中只能写一条语句
答案: 【 C语言本身没有输入输出语句】
9、单选题:
计算机高级语言程序的运行方法有编译执行和解释执行两种,以下叙述中正确的是( )。
选项:
A: C语言程序仅可以解释执行
B: C语言程序既可以编译执行又可以解释执行
C: C语言程序仅可以编译执行
D: C语言程序仅可以解释执行
答案: 【 C语言程序仅可以编译执行】
10、单选题:
以下叙述中错误的是( )。
选项:
A: C语言的可执行程序是由一系列指令组成
B: C语言的源程序不能直接在计算机上运行
C: 通过编译得到C程序的二进制目标程序须经过链接才能运行
D: 在没有C语言编译器的计算机上不能运行C源程序生成的.exe文件
答案: 【 在没有C语言编译器的计算机上不能运行C源程序生成的.exe文件】
11、单选题:
能将C语言程序转换成目标语言程序的是( )。
选项:
A: 调试程序
B: 解释程序
C: 编译程序
D: 编辑程序
答案: 【 编译程序 】
12、单选题:
可以在C语言中用做用户标识符的是( )。
选项:
A: void defineWORD
B: as_b3 _123 If
C: for -abccas
D: 2cDoSIG
答案: 【 as_b3 _123 If 】
13、单选题:
在使用程序流程图来表示算法时,菱形用来表示( )。
选项:
A: 输入与输出
B: 子程序
C: 判断分支
D: 循环边界
答案: 【 判断分支】
14、单选题:
在C语言中,不正确的int类型的常数是( )。
选项:
A: 10101010
B: 0
C: 027
D: 0xae
答案: 【 10101010】
15、单选题:
以下说法中正确的是( )。
选项:
A: C语言程序总是从第一个函数开始执行
B: 在C语言程序中,要调用函数必须在main()函数中定义
C: c语言程序总是从main()函数开始执行
D: c语言程序中的main()函数必须放在程序的开始部分
答案: 【 c语言程序总是从main()函数开始执行】
16、单选题:
结构化程序设计主要强调的是( )。
选项:
A: 程序的规模
B: 程序的执行效率
C: 程序的易读性
D: 程序的可移植性
答案: 【 程序的易读性】
17、单选题:
一个良好的算法由下面的基本结构组成,但不包括( )。
选项:
A: 顺序结构
B: 选择结构
C: 循环结构
D: 跳转结构
答案: 【 跳转结构】
18、单选题:
以下叙述中正确的是( )。
选项:
A: C语言比其他语言高级
B: C语言可以不用编译就能被计算机识别执行
C: C语言以接近英语国家的自然语言和数学语言作为语言的表达形式
D: C语言出现的最晚,具有其他语言的一切优点
答案: 【 C语言以接近英语国家的自然语言和数学语言作为语言的表达形式】
19、单选题:
程序流程图(PFD)中的箭头代表的是( )。
选项:
A: 数据流
B: 控制流
C: 调用关系
D: 组成关系
答案: 【 控制流 】
20、单选题:
以下叙述中正确的是( )。
选项:
A: 预处理是指完成宏替换和文件包含中指定文件的调用
B: 预处理也是C语句
C: C源程序中,凡是行首以#标识的控制行都是预处理指令
D: 预处理就是完成c编译程序对c源程序的第一遍扫描,为编译的词法分析和语法分析作准备
答案: 【 C源程序中,凡是行首以#标识的控制行都是预处理指令】
21、单选题:
C语言中主函数的个数为( )个。
选项:
A: 1
B: 任意
C: 2
D: 0
答案: 【 1】
22、单选题:
以下关于C语言描述错误的是( )。
选项:
A: 一个C程序总是从main函数开始执行
B: 每个语句和数据声明的最后必须有一个分号
C: C语言的注释符是以“/*”开始并以“*/”结束的
D: 一个C程序可以包含多个main函数
答案: 【 一个C程序可以包含多个main函数】
23、单选题:
C 语言源程序文件后缀为( )。
选项:
A: .EXE
B: .OBJ
C: .c
D: .h
答案: 【 .c】
24、判断题:
C 语言具有简洁明了的特点。
选项:
A: 正确
B: 错误
答案: 【 正确】
25、判断题:
预处理命令的前面必须加一个“#”号。
选项:
A: 正确
B: 错误
答案: 【 正确】
26、判断题:
标准格式输入函数scanf()可以从键盘上接收不同数据类型的数据项。
选项:
A: 正确
B: 错误
答案: 【 正确】
27、判断题:
C 语言标准格式输入函数 scanf() 的参数表中要使用变量的地址值。
选项:
A: 正确
B: 错误
答案: 【 正确】
28、判断题:
任何表达式语句都是表达式加分号组成的。
选项:
A: 正确
B: 错误
答案: 【 正确】
29、判断题:
在C语言中,逗号既可以作为运算符,也可以作为分隔符。
选项:
A: 正确
B: 错误
答案: 【 正确】
30、判断题:
C语言的书写格式不会影响程序的可读性。
选项:
A: 正确
B: 错误
答案: 【 错误】
31、判断题:
C 语言程序中可以有多个函数 , 但只能有一个主函数。
选项:
A: 正确
B: 错误
答案: 【 正确】
32、判断题:
C 语言程序实现与其他高级语言一样也要经过编辑、编译链接和运行这样的三步曲。
选项:
A: 正确
B: 错误
答案: 【 正确】
33、判断题:
下划线是标识符中的合法字符。
选项:
A: 正确
B: 错误
答案: 【 正确】
34、填空题:
C语言中语句结束的标志是_______。
答案: 【 分号##%_YZPRLFH_%##;】
35、填空题:
C程序的基本构成单位是______。
答案: 【 函数】
36、填空题:
C程序源文件的后缀名是________。
答案: 【 .c##%_YZPRLFH_%##.C】
37、填空题:
若有定义:char c=‘10’;则变量c中包含的字符个数为_____。
答案: 【 1】
38、填空题:
结构化程序的三种基本结构是顺序结构、分支结构和_____结构。
答案: 【 循环】
第2周----数据性质的限定--数据类型
第二周测验
1、单选题:
下列四组选项中,均是不合法的用户标识符的选项是( )。
选项:
A: x2 p_2 do
B: x-2 int 3m
C: char Flaot A0
D: -12 xb c%Y
答案: 【 x-2 int 3m】
2、单选题:
下列四组选项中,均是合法转义字符的选项是( )。
选项:
A: ‘? ’‘“’‘n’
B: ‘A’‘12’‘”’
C: ‘18’‘b’‘xab’
D: ‘\2’‘101’‘xlf’
答案: 【 ‘? ’‘“’‘n’】
3、单选题:
下面不正确的字符常量是( )。
选项:
A: ”A“
B: ’0‘
C: ’a‘
D: '\'
答案: 【 ”A“】
4、单选题:
有定义:char a; int b; float x; double y;则表达式a%b-y*x值的数据类型为( )。
选项:
A: float
B: char
C: int
D: double
答案: 【 double】
5、单选题:
下列变量定义中合法的是( )。
选项:
A: long _x=12L;
B: double a=e-3;
C: short if=2;
D: float 3_ax=1E-2;
答案: 【 long _x=12L;】
6、单选题:
下列字符串中不能作为标识符使用的是( )。
选项:
A: WHILE
B: user
C: _lvar
D: 9stars
答案: 【 9stars 】
7、单选题:
以下叙述中错误的是( )。
选项:
A: 用户所定义的标识符允许使用关键字
B: 用户所定义的标识符应尽量做到“见名知意”
C: 用户所定义的标识符必须以字母或下划线开头
D: 用户定义的标识符中,大、小写字母代表不同标识
答案: 【 用户所定义的标识符允许使用关键字】
8、单选题:
以下不合法的字符常量是( )。
选项:
A: '18'
B: '"'
C: '\'
D: 'xcc'
答案: 【 '18'】
9、单选题:
下列错误的十六进制型常量表示是( )。
选项:
A: 0x2f
B: 0xg
C: 0x88
D: 0xaf
答案: 【 0xg】
10、单选题:
字符串"t1234""转义字符有( )个。
选项:
A: 1
B: 2
C: 3
D: 4
答案: 【 3】
11、单选题:
各种基本数据类型的存贮空间正确的长度排列为( )。
选项:
A: int < char <float<double
B: double<float <int<char
C: char<int <float<double
D: float<int <char<double
答案: 【 char<int <float<double 】
12、单选题:
不是C语言提供的合法关键字是( )。
选项:
A: this
B: case
C: char
D: switch
答案: 【 this】
13、单选题:
若已定义x和y为float类型,且x=1;则表达式y=x+3/2的值是( )。
选项:
A: 1
B: 2
C: 2.000000
D: 2.500000
答案: 【 2.000000】
14、单选题:
C语言中双精度浮点型变量double在内存中占( )字节。
选项:
A: 1
B: 2
C: 4
D: 8
答案: 【 8】
15、单选题:
以下选项中属于C语言的数据类型是( )。
选项:
A: 字符串型
B: 双精度型
C: 逻辑型
D: 布尔型
答案: 【 双精度型】
16、单选题:
以下每个选项都代表一个常量,其中正确的整型常量是( )。
选项:
A: 1.2
B: -20
C: 1,000
D: 1 4 8
答案: 【 -20 】
17、单选题:
不合法的八进制数是( )。
选项:
A: 0
B: 018
C: 077
D: 023
答案: 【 018】
18、单选题:
下列哪个标识符是C语言合法的标识符( )。
选项:
A: a*b
B: -xyz
C: ba2
D: 5x
答案: 【 ba2】
19、单选题:
在C程序中,设一表达式中包含有int,long, unsigned和char类型的变量和数据,则表达式最后的运算结果类型是( )。
选项:
A: int
B: char
C: unsigned
D: long
答案: 【 long】
20、单选题:
C语言中基本的数据类型不包括( )。
选项:
A: 整型
B: 字符型
C: 实型
D: 字符串型
答案: 【 字符串型】
21、判断题:
算法简而言之就是基于某种计算机语言,利用数据结构来解决具体问题的思路和方法。
选项:
A: 正确
B: 错误
答案: 【 正确】
22、判断题:
描述算法可以用自然语言、传统流程图、N-S流程图来描述。
选项:
A: 正确
B: 错误
答案: 【 正确】
23、判断题:
C语言本身没有输入输出语句,要实现输入输出必须调用相应的输入输出函数。
选项:
A: 正确
B: 错误
答案: 【 正确】
24、判断题:
C语言中的基本数据类型有字符型、整型和浮点型。
选项:
A: 正确
B: 错误
答案: 【 正确】
25、判断题:
在C语言中输出数据时可以指定数据的精度,即小数点后保留几位。
选项:
A: 正确
B: 错误
答案: 【 正确】
26、判断题:
在标准C中,使用所有输入输出函数必须包含“stdio.h”文件。
选项:
A: 正确
B: 错误
答案: 【 错误】
27、判断题:
程序中若要使用printf()函数就必须引用头文件”stdio.h”。
选项:
A: 正确
B: 错误
答案: 【 正确】
28、判断题:
“A”是一个字符常量。
选项:
A: 正确
B: 错误
答案: 【 错误】
29、判断题:
浮点型常量的指数表示中 ,e 是可以省略的。
选项:
A: 正确
B: 错误
答案: 【 错误】
30、判断题:
在C语言中,逗号既可以作为运算符,也可以作为分隔符。
选项:
A: 正确
B: 错误
答案: 【 正确】
31、判断题:
下划线是标识符中的合法字符。
选项:
A: 正确
B: 错误
答案: 【 正确】
32、判断题:
C 语言程序在书写上只能是一条语句写一行。
选项:
A: 正确
B: 错误
答案: 【 错误】
33、判断题:
分号是 C 语言中语句的结束符 , 不可用作分隔符。
选项:
A: 正确
B: 错误
答案: 【 错误】
34、判断题:
C 语言规定 : 定义符号常量时必须用大写字母。
选项:
A: 正确
B: 错误
答案: 【 错误】
35、判断题:
一个变量的数据类型被强制转换后,它将保持被强制转换后的数据类型。
选项:
A: 正确
B: 错误
答案: 【 错误】
36、判断题:
数据是操作的对象,操作的结果会改变数据的状况。
选项:
A: 正确
B: 错误
答案: 【 正确】
37、判断题:
字符型变量用来存放字符常量,注意只能放2个字符。
选项:
A: 正确
B: 错误
答案: 【 错误】
38、判断题:
在 C语言中的实型变量分为两种类型,它们是 float(实型)和double(双精度实型)。
选项:
A: 正确
B: 错误
答案: 【 错误】
39、填空题:
已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'+'6'-'3'后,c2中的值为_____。
答案: 【 D】
40、填空题:
在C语言中,char型数据在内存中的存储形式是______码。
答案: 【 ASCII##%_YZPRLFH_%##ascii】
41、填空题:
若x是int型变量,则执行表达式x=(a=4,6*2)后,x的值为______。
答案: 【 12】
42、填空题:
getchar函数可以接收______个字符,输入数字也按字符处理。
答案: 【 1##%_YZPRLFH_%##单】
43、填空题:
一般一个字符变量在内存中占_____个字节。
答案: 【 1##%_YZPRLFH_%##一】
第3周 数据加工处理----运算符及表达式
第三周单元测试
1、单选题:
设有定义 int k=3,m=6; float f=12;,则以下选项中错误的表达式是( )。
选项:
A: k=k>=k+2
B: -k--
C: m%int(f)
D: k>=f>=m*k
答案: 【 m%int(f) 】
2、单选题:
有以下程序:#include <stdio.h>int main(){ char c1='A',c2='a';printf("%cn",(c1,c2));return 0;}以下叙述中正确的是( )。
选项:
A: 程序输出大写字母 A
B: 程序输出小写字母 a
C: 格式说明符不足,编译出错
D: 程序运行时产生出错信息
答案: 【 程序输出小写字母 a】
3、单选题:
设有定义 int x=2,y=3,z=4;,则以下选项中值为 0 的表达式是( )。
选项:
A: (!x==1)&&(!y==0)
B: (x<&&!z||1)
C: x&&y
D: (y+y)&&(z-x)
答案: 【 (!x==1)&&(!y==0) 】
4、单选题:
有以下程序:#include <stdio.h>int main() { int x=0,a=3,b=2,c=1; x=a<b?b:a; x=x>c?c:x; printf("%dn",x); return 0;}则程序输出结果是( )。
选项:
A: 0
B: 1
C: 2
D: 3
答案: 【 1】
5、单选题:
已知下列语句中的a和b都是int型变量,其中错误的语句是( )。
选项:
A: a=b++;
B: a=++b;
C: (a+b)++;
D: ++a=b;
答案: 【 (a+b)++;】
6、单选题:
以下程序输出的结果是( )。#include <stdio.h>int main() { int x=13,y=24; printf("%d%d",x++,++y); printf("%d%dn",x++,++y); return 0;}
选项:
A: 12353513
B: 12343514
C: 12343513
D: 13251426
答案: 【 13251426】
7、单选题:
在C 语言中,逻辑值“真”用 表示( )。
选项:
A: true
B: 大于0 的数
C: 非0 整数
D: 非0 的数
答案: 【 非0 的数】
8、单选题:
下列运算符中优先级最低的是( )。
选项:
A: !
B: &&
C: !=
D: ?:
答案: 【 ?:】
9、单选题:
以下能正确定义且赋初值的语句是( )。
选项:
A: int n1=n2=10;
B: char c=32;
C: float f+1.2=f;
D: double x=12.3E2.5;
答案: 【 char c=32;】
10、单选题:
设a为整型变量,不能正确表达数学关系:10<a<15的C语言表达式是( )。
选项:
A: 10<a<15
B: a= =11 || a= =12 || a= =13 || a= =14
C: a>10&&a<15
D: !(a<=10)&&!(a>=15)
答案: 【 10<a<15】
11、单选题:
表达式“10!=9”的值是( )。
选项:
A: true
B: 非零值
C: 0
D: 1
答案: 【 1】
12、单选题:
设有单精度变量f,其值为13.8。执行语句“n=( (int)f )%3;”后,n的值是( )。
选项:
A: 4
B: 1
C: 4.333333
D: 4.7
答案: 【 1】
13、单选题:
若有代数式3ae/bc,则不正确的c语言表达式是( )。
选项:
A: a/b/c*e*3
B: 3*a*e/b/c
C: 3*a*e/b*c
D: a*e/b/c*3
答案: 【 3*a*e/b/c 】
14、单选题:
设有变量说明:float x = 4.0 , y = 4.0,下面使x为10.0的表达式是( )。
选项:
A: x -= y*2.5
B: x /= y+9
C: x *= y-6
D: x += y+2
答案: 【 x += y+2】
15、单选题:
执行语句"x=(a=3,b=a--)"后,x,a,b的值依次为( )。
选项:
A: 3, 3, 2
B: 3,2,2
C: 3,2,3
D: 2,3,2
答案: 【 3,2,3】
16、单选题:
以下程序输出的结果是( )。#include <stdio.h>int main() { int a,b,c=30; a=c/5%9; b=a&&(-10); printf("%d,%dn",a,b); return 0;}
选项:
A: 6,1
B: 1,6
C: 2,1
D: 1,2
答案: 【 6,1】
17、单选题:
执行下列语句后,y的值是( )。int x=1,y=1;++x||++y;
选项:
A: 不确定
B: 0
C: 1
D: 2
答案: 【 1】
18、单选题:
以下程序输出的结果是( )。#include <stdio.h>int main() { int x=2; x+=x-=x*x; printf("%dn",x); return 0;}
选项:
A: 4
B: -4
C: 6
D: -6
答案: 【 -4】
19、单选题:
已知各变量的类型说明如下: int m=8,n, a, b; unsigned long w=10; double x=3.14, y=0.12; 则以下符合C语言语法的表达式是( )。
选项:
A: a+=a-=(b=2)*(a=8)
B: n=n*3=18
C: x%3
D: y=float (m)
答案: 【 a+=a-=(b=2)*(a=8)】
20、单选题:
以下符合C语言语法的赋值表达式是( )。
选项:
A: a=9+b+c=d+9
B: a=(9+b, c=d+9)
C: a=9+b, b++, c+9
D: a=9+b++=c+9
答案: 【 a=(9+b, c=d+9)】
21、单选题:
在C语言中,要求运算数必须是整型的运算符是( )。
选项:
A: /
B: ++
C: *=
D: %
答案: 【 %】
22、单选题:
已知s是字符型变量,下面不正确的赋值语句是( )。
选项:
A: s=’12’;
B: s= ’u+v’;
C: s=’1’+’2’;
D: s=1+2;
答案: 【 s= ’u+v’;】
23、单选题:
设x、y均为float型变量,则不正确的赋值语句是( )。
选项:
A: ++x ;
B: x*=y-2;
C: y=(x%3)/10;
D: x=y=0;
答案: 【 y=(x%3)/10; 】
24、单选题:
以下程序输出的结果是( )。#include <stdio.h>int main() { int x=12345; printf("%2dn",x); return 0;}
选项:
A: 12
B: 12345
C: 345
D: 45
答案: 【 12345】
25、单选题:
以下程序输出的结果是( )。#include <stdio.h>int main() { unsigned char x,y; x=7^3; y=~4&3; printf("%d,%dn",x,y); return 0;}
选项:
A: 4,3
B: 3,4
C: 2,4
D: 4,5
答案: 【 4,3】
26、判断题:
C 程序中,+、-、*、/、%号是算术运算符,可用于整型和实型数的运算。
选项:
A: 正确
B: 错误
答案: 【 错误】
27、判断题:
表达式3.6-5/2+1.2+5%2的值是1.8 。
选项:
A: 正确
B: 错误
答案: 【 错误】
28、判断题:
用逻辑表达式表达“大于60且小于100的数”为x>60&x<100 。
选项:
A: 正确
B: 错误
答案: 【 错误】
29、判断题:
/ 运算符要求运算数必须是整数。
选项:
A: 正确
B: 错误
答案: 【 错误】
30、判断题:
Int, #a15 , char都是合法的标识符。
选项:
A: 正确
B: 错误
答案: 【 错误】
31、判断题:
'b'和"b"是不同的两种常量。
选项:
A: 正确
B: 错误
答案: 【 正确】
32、判断题:
在标准C中,“=”是判断两个数是否相等。
选项:
A: 正确
B: 错误
答案: 【