第一章.程序设计与C语言【雅托】-湛江专升本培训机构(全日制)
第一章 程序设计与C语言
【1】
一、单项选择
1. 以下选项中不能作为标识符的是( )
A. a B. A C.&a D.a
2. 下列能够用作C 语言自定义的标识符的是( )
A.6 B.6 6
C.define typedef
答案解析
1.【精析】C
用来对变量、符号常量名、函数、数组、类型等命名的有效字符序列统称为标识符。其命 名方式应遵守以下命名规则:①变量名只能由字母、数字和下划线3种字符组成,且第1个字符必须为字母 或下划线;②变量的命名区分大小写;③不允许使用C 关键字为变量命名。选项C 错误。
2.【精析】A
C语言自定义标识符的命名规则为:①只能由数字、字母、下划线组成,且第一个字符必 须为字母或下划线;②字母区分大小写;③不能与C 语言中已经预定义的、具有特殊用途的关键字重名。B 选项中以数字开头;C 、D选项为C 语言中的关键字。故选A。
二、判断题
1. C语言的注释只能出现在程序的最开始位置。( )
2.对于一个C语言来说,它总是从 main()开始执行的。( )
3.在C语言程序中,变量总是必须先定义再使用。( )
4.编译C语言程序时,可以发现注释中存在的拼写错误。( )
5.1个C语言程序里有一个 main函数。( )
答案解析
1.【精析】 ×可以使用“/1”和“/*…*/”对C 程序中的任何一行或数行做注释。
2.【精析】√ 在C 语言中,main() 函数是程序执行的开始人口。
3 .【答案】√
4 .【精析】 × 编 译 和 运 行C 语言程序时,系统不会对注释进行识别,所以不能发现注释中存在的拼 写错误。
5.【精析】√ 一 个C 语言程序是由一个或多个函数组成的,其中必须包含一个main 函数(且只能有 一个main 函数)
【2】
一、单项选择
1. 下列关于C 语言程序注释的说法中,正确的是( )
A. C语言程序必须有注释
B. 在C语言程序进行编译时可以发现注释中的拼写错误
C. // 注释可以跨越多行
D. 注释用来对程序进行说明,以便他人理解程序各部分的作用 2. C语言编写的源程序
2. C语言编写的源程序( )
A. 可立即执行
B. 经过编译即可执行
C. 经过编译和链接后才能执行
D. 经过编译和解释后才能执行
3. C语言程序的可执行文件的扩展名是( )
A..c B..exc C..0 D..obj
4.计算机唯一能直接识别的语言是( )
A. 机器语言 B.汇编语古
C. 高级语言 D. 面向对象语言
5. 以下叙述中正确的是( )
A. C语言比其他语言高级
B. C语言可以不用编译就能被计算机识别和执行
C. C语言出现最晚,具有其他语言的一切优点
D. C语言以接近英语国家的自然语言和数学语言作为语言的表达形式
6.下列对C 语言特点的描述中,不正确的是( )
A. C语言数据类型丰富
B. C 语言既可以用来编写应用程序,又可以用来编写系统软件
C. C 语言中变量可以不定义,直接使用
D. C 语言是一种结构式模块化程序设计语言
7.下列关于解释程序和编译程序,正确的是( )
A. 解释程序和编译程序均能产生目标程序
B. 解释程序和编译程序均不能产生目标程序
C. 编译程序能产生目标程序,解释程序不能产生目标程序
D. 编译程序不能产生目标程序,解释程序能产生目标程序
8.用计算机高级语言编写的程序一般称为( )
A. 目标程序 B. 可执行程序 C. 源程序 D. 伪代码程序
9.以下叙述中,不正确的是( )
A. 编译程序用于将高级语言源程序转换成目标程序
B. 汇编语言采用助记符表示所要执行的操作
C. 程序有三种基本结构:顺序结构、选择结构和循环结构
D.注释必须跟在一行语句的后面
10.下列关于C 语言的说法中,正确的是( )
A. 所有函数名都可以由用户命名
B. 在C语言中调用库函数时应包含对应的头文件
C. 使用C语言编译时编译器不检查程序的语法
D.使用C语言编译时若没有错误,则程序的运行结果一定正确
11.一个C 程序的执行是从( )
A,程序的 main 函数开始,到main 函数结束
B. 程序的第一个函数开始,到程序的最后一个函数结束
C. 程序的main 函数开始,到程序的最后一个函数结束
D. 程序的第一个函数开始,到程序main 函数结束
12.养成良好的编程习惯对程序员来说很重要,在编写C语言程序时,不正确的是( )
A. 在程序代码中可以穿插一些必要的注释
B. 变量名字符数越少越好
C. 采用分层缩进的书写格式
D. 以模块化方式考虑程序结构,以函数形式书写较复杂的程序
13.在一个C 语言程序中( )
A. 可以有多个main 函数
B. 可以没有main 函数
C. 有且只有一个main函数
D. 必须有数据输入函数
14.下列语句中,不正确的是( )
A.return 0;
B.int a,b,c;
C.a=31:b=22
D.c=a+b;
15.下列叙述中错误的是( )
A. C程序可以由多个程序文件组成
B. 一个C语言程序只能实现一种算法
C. C程序可以由一个或多个函数组成
D. 一个函数可以单独作为一个C程序文件存在
16. 以下叙述中错误的是( )
A. 计算机不能直接执行用C 语言编写的源程序
B. C语言源程序经编译程序编译后生成的扩展名为,obj的文件是一个二进制文件
C. 扩展名为 .obj 的文件经链接程序链接后生成的扩展名为.exe的文件是一个二进制文件
D.扩展名为.obj 和,exe 的二进制文件都可以直接执行
17. 以下叙述正确的是( )
A. 在C程序中,main 函数必须位于程序的最前面
B. C程序的每行中只能写一条语句
C. C语言本身没有输入输出语句
D. C语言的每条语句后必须跟一个逗号
18. C语言程序能够在不同的操作系统下运行,这说明C 语言具有很好的( )
A. 移植性 B.兼容性
C. 适应性 D. 操作性
19.若在C程序中用到了输入函数scanf(),那么在程序的开头需要输入( )
A.#include<stdafx.h>
B.#include<stdio.h>
C.#include<stdlib.h>
D.#include<string.h>
20.以下正确的说法是( )
A.所谓算法就是数学计算公式
B. 程序是解决问题的步骤
C. C语言的函数纯粹是为实现数学函数而设立的
D.C 语言中,C程序的一个函数就是一个程序模块
二、判断题
1.C语言源程序的基本单位是函数。( )
2.机器语言属于低级语言,汇编语言属于高级语言。( )
3.C语言语法限制不太严格,生成的目标代码质量高,程序执行效率高。( )
4.一个源程序文件中只有预处理指令和函数定义两部分。( )
5.在编写C程序时,注释只能用汉字表示。( )
6.C语言只有一种注释方式,用“//”表示。 7.N-S 流程图是一种简化的流程图。( )
8.C语言中的输出语句是由 print 函数完成的。( )
三、填空题
1.上机操作一个C 程序,一般要经过以下4个步骤:编辑、编译、 和执行。
2.C 语言程序编译后生成 程序,与库函数链接后生成 程序。
3.C 语言中语句必须以 结尾。
4.每个语言程序有且只有一个 函数,它是程序的起点和终点
5.翻译程序有 和编译两种方式。
6.计算机语言已经经历了 、汇编语言、高级语言三个阶段。
7.C 语言源程序的扩展名是
8.在C 语言中,对编译和运行不起作用的是
9.C 语言的预处理语句以 开头。
四、简答题
1.翻译程序有哪些工作方式?它们有什么区别?
2.简述程序设计语言的发展。
答案解析
一、单项选择
1.【精析】D
注释可有可无,选项A 错误。注释不会影响程序的功能和正确性,编译器在编译程序时 完全忽略注释,不会对注释内容进行语法检查,选项B 错 误 。C 语言注释有两种方式,“/*…*/”可以注释 多行,而“//”只能注释一行,选项C 错误。
2.【精析】C
一 个C 语言源程序必须经过编译和链接后才能生成一个可执行文件,最后运行可执行 文件得到结果,选项C 正确。
3 .【精析】 B
.c是 C 语言源程序的扩展名, .obj 是 C 语言源程序编译以后得到的目标文件的扩展 名,e.xe 是链接后生成的可执行文件的扩展名。
4.【精析】A
机器语言是计算机唯一能够直接识别和执行的语言。
5.【精析】D
计算机语言分为机器语言、汇编语言和高级语言,C 语言属于高级语言,但并不意味着C 语言比其他语言高级,选项A 错误。除了低级语言外,其他各种语言都必须经过编译和解释,才能被计算机识别和执行,选项B 错误。C 语言并不是出现最晚的语言,在C 语言之后诞生的语言有Java 、C++ 、C#等, 选项C 错误。
6.【精析】C
C语言中变量必须先定义后使用,选项C 不正确。
7.【精析】C
编译是通过编译程序一次性地将整个源程序翻译成机器语言程序,以后每次运行时直 接执行已经翻译好的机器语言程序,翻译时产生目标程序。解释是解释程序对源程序一边翻译,一边执行, 不产生目标程序,选项C 正确。
9.【精析】C
用计算机高级语言编写的程序一般称为源程序,选项C 正确。 9.【精析】D 注释可以出现在程序的任何地方,选项D 不正确。
10.【精析】B
main()函数及库函数不能由用户命名,选项A 错误。使用C 语言编译时,编译器会对 C 程序进行语法检查,选项C 错误。C 语言编译时没有错误,程序的运行结果也不一定正确,有可能存在逻 辑错误,选项D 错误。
11.【精析】A
在一个C 语言源程序中,无论 main 函数书写在程序的前面,还是后面,程序的执行总 是从main函数开始,最后在main 函数中结束。
12.【精析】B
变量命名时应尽量“见名知义”,并不是字符数越少越好,选项B 不正确。
13.【精析】C
C语言程序可由一个或多个函数组成,但有且只有一个main 函数,选项A、B错误。C 程序中不一定有数据输入函数,选项D 错误。
14 .【精析】C
C语言程序一行可以写多条语句,每条语句必须以分号结尾,因此,选项C 应改为a=31;b=22;。
15 .【精析】 B
一个C 语言程序可以实现多种算法,选项B 错误;一个函数可以单独作为一个C 程序 文件存在,被包含到其他程序中。
16.【精析】D
C语言源程序经过C 编译程序编译后会生成一个扩展名为.obj的目标文件,然后经链 接程序链接后生成扩展名为.exe的可执行文件才能执行。选项D 错误。
17 .【精析】C
不论main 函数在整个程序中的位置如何,一个C 程序总是从main 函数开始执行的, 选项A 错误。编写C 程序时,可以一行内写几个语句,也可以一个语句分开写在多行上,选项B 错 误 。C 语 言本身没有输入输出语句,输入和输出的操作是由库函数scanf和 printf等函数来完成的,选项C 正确。编 写 C 程序时,每个语句和数据声明的最后必须有一个分号,选项D 错误。
18 .【精析】A
C语言是一种通用的、高级的编程语言,具有很好的移植性,能够在不同的操作系统下 运行。
19 .【精析】B
在程序中如要用到标准函数库中的输入函数 scanf和输出函数printf,应该在程序的开 头输入:#include<stdio.h>。
20.【精析】 D
算法是指为解决某个特定问题而采取的确定且有限的步骤,并不是数学计算公式,选 项 A 错误;算法是解决问题的步骤,而程序是对问题的具体代码实现,选项B 错误;C 语言中的函数不全是 为了实现数学函数而设立的,如printf(输出)函数和scanf(输入)函数等,选项C 错误;C 语言用函数作为程 序的模块单位,便于实现程序的模块化,C 语言是完全模块化和结构化的语言,选项D 正确。
二、判断题
1.【精析】√
函 数 是C 程序的基本单位,一个C 程序必须包含一个main 函数,也可以包含其他若干 个函数。
2.【精析】×
机器语言和汇编语言统称为低级语言。
3.【精析】√
C 语言功能强大、使用灵活,既可用于编写应用软件,又能用于编写系统软件;语法限制 不太严格;数据类型丰富;编写的程序可移植性好;生成的目标代码质量高,程序执行效率高,是世界上应用 最广泛的高级程序设计语言之一。
4.【精析】 ×
一个源程序文件中包括3个部分:预处理指令、全局声明和函数定义。
5.【精析】 ×
注释是对程序进行必要的说明,对编译和运行不起作用,它的作用是方便自己和别人 理解程序各部分的功能,可以用汉字或英文字符表示。
6.【精析】 ×
C 语言允许用两种注释方式:单行注释用“//”表示,当注释内容一行写不完时可以用多 个单行注释;块式注释以/*开始,以*/结束,可以包含多行注释内容。
7.【精析】 √
N-S流程图是一种简化的流程图,去掉了带箭头的流程线,全部算法写在一个矩形框 内,适于结构化程序设计。
8.【精析】 ×
C 语言中的输入、输出由库函数scanf 和 printf等函数来完成。
三、填空题
1.链接 2 . 目标可执行 3.分号 4.main()5.解释 6.机器语言
7..c 8.注释 9.井
四、简答题
1.【参考答案】 翻译程序有两种工作方式:解释方式和编译方式。
编译方式是将高级语言源程序通过编译程序翻译成机器语言目标代码;解释方式是对高级语言源程序 进行逐句解释,解释一句就执行一句,但不产生机器语言目标代码。
2.【参考答案】 计算机语言已经经历了机器语言、汇编语言、高级语言三个阶段。
机器语言是由0、1二进制代码组成的能被机器直接理解、执行的指令集合,是计算机唯一能够直接执行 的语言。
汇编语言采用一定的助记符来代替机器语言中的指令和数据,用汇编语言编制的程序必须经过汇编程 序翻译成计算机所能识别的机器语言程序后,才能被计算机执行。
高级语言编写的程序易学、易读、易修改,通用性好,不依赖于机器。