上海花千坊

大学生考证

计算机二级《C语言》基础模拟题及答案

时间:2024-11-22 19:40:47 夏仙 大学生考证 我要投稿

计算机二级《C语言》基础模拟题及答案(精选4套)

  在日常学习、工作生活中,只要有考核要求,就会有试题,借助试题可以检验考试者是否已经具备获得某种资格的基本能力。那么你知道什么样的试题才能有效帮助到我们吗?以下是小编为大家整理的计算机二级《C语言》基础模拟题试题及答案,仅供参考,欢迎大家阅读。

  计算机二级《C语言》基础模拟题及答案 1

  1[单选题] 以下叙述中正确的是( )。

  A.用C语言编写的程序只能放在一个程序文件中

  B.C程序书写格式严格,要求一行内只能写一个语句

  C.C程序中的注释只能出现在程序的开始位置和语句的后面

  D.C程序书写格式自由,一个语句可以写在多行上

  参考答案:D

  参考解析:C语言编写的程序可以放置于多个程序文件中,所以A错误。C程序中的一行可以有多条语句,所以B错误。C语言中的注释语句可以与原语句放在一行也可以不放在一行,所以C错误。

  2[单选题] 以下选项中,能用作数据常量的是( )。

  A.115LB.0118C.1.5el.5D.0115

  参考答案:A

  参考解析:A选项中l15L表示ll5是长整型数据,合法。B选项是八进制常量的表示方法,但是在八进制中不能含有数字8,所以B错误。c选项中e后面应该是整数不能是小数l.5,所以c错误。D选项中八进制常量应该是数字…0开始,而不是字母…O开始。

  3[单选题] 对于一个正常运行的C程序,以下叙述中正确的是( )。

  A.程序的执行总是从main函数开始,在程序的最后一个函数中结束

  B.程序的执行总是从程序的第一个函数开始,在main函数结束.

  C.程序的执行总是从main函数开始、

  D.程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束

  参考答案:C

  参考解析:任何一个c程序都是从主函数main开始,至主函数main结束,所以选择c选项。

  4[单选题] 有以下程序:

  程序运行后的输出结果是( )。

  A.1 2B.1 4C.123 4D.123 456

  参考答案:D

  参考解析:fprintf()函数向文本文件输出数据,将输出的内容按格式输出翻硬盘的文本文件中。执行两次fprintf后。文件中的内容为。l23 456”,所以D选项正确。

  5[单选题] 有以下程序:

  程序运行后的输出结果是( )。

  A.1,2,1,2,2,4

  B.1,2,6,6,7,8

  C.1,2,2,4,2,4

  D.1,2,6,6,2,4

  参考答案:A

  参考解析:全局变量与函数体内局部变量同名时,局部变量会覆盖全局变量,因此在subl()函数内,全局变量m,n是不可见的,在函数 suhl()对m,n操作的是局部变量,对全局变量不产生影响。但在sub2()函数内,由于没有和全局变量变量重名,因此在此函数内,m,n是可见的。因此,第一个pfinff()打印的是全局变量m,n,故打印的是l,2,第二个pfinff(),调用suhl(),没有修改全局变量m,n.故打印的是l,2,第三个一村(),之前调用了sub2(),修改了全局变量m,n。因此,打印的'是2,4。故答案为A选项。

  6[单选题] 软件测试的目的是( )。

  A.评估软件可靠性

  B.发现并改正程序中的错误

  C.改正程序中的错误

  D.发现程序中的错误

  参考答案:D

  参考解析:软件测试是为了发现错误而执行程序的过程,测试要以查找错误为中心,而不是为了演示软件的正确功能。不是为了评估软件或改正错误。

  7[单选题] 有以下程序:

  程序运行后的输出结果是( )。

  A.321B.12300C.1D.123

  参考答案:D

  参考解析:程序首先将数组a[10]中的元素l、2.3分别写入了文件dl。dat文件中,然后又将dl.dat文件中的数据123,整体写入到了变量n的空间中,所以打印n时输出的 数据为123。

  8[单选题] 有以下程序:

  程序执行后的输出结果是( )。

  A.2B.3C.7D.0

  参考答案:A

  参考解析:因为fun(int x)是一个递归函数,所以主函数中fun(7)经过3次递归调用,其过程可以描述为“fun(7)=7一fun(5)=7一(5一fun(3))=7一 (5一(3一fun(1)))=7一(5一(3—3))=7—5=2”,所以最后输出结果为2。因此.A选项正确。

  9[单选题] 有以下程序:

  执行时输入:2<回车>,则输出结果是( )。

  A.1 23 4B.5 431C.1235D.32 1 4

  参考答案:C

  参考解析:第一个for循环初始化数组a,分别为l,3,5,随机数,形成了基本有序的序列,再将输入的数字插入到数组a,使他们形成有序序列。因此可以分析出,打印的结果为1,2,3,5。故答案为c选项。

  10[简答题]学生记录由学号和成绩组成,N名学生的数据已放入主函数中的结构体数组中,请编写函数fun,其功能是:把分数最低的学生数据放入b所指的数组中,注意:分数最低的学生可能不止一个,函数返回分数最低的学生人数:

  注意:部分源程序在文件PROGl.C中。

  请勿改动主函数main和其他函数中的任何内容,仅在函数flm的花括号中填入你编写的若干语句。

  参考解析:

  【考点分析】

  本题考查:查找结构体数组中的最小数据,需要通过for循环语句和if条件语句来完成。

  【解题思路】

  本题中第一个循环语句的作用是遍历数组求出最低分数,第二个循环语句的作用是将数组中的元素与最低分比较,查找是否存在与最低分相等的成绩。

  计算机二级《C语言》基础模拟题及答案 2

  1.下面对软件特点描述不正确的是( )。

  A. 软件是一种逻辑实体,具有抽象性

  B. 软件开发、运行对计算机系统具有依赖性

  C. 软件开发涉及软件知识产权、法律及心理等社会因素

  D. 软件运行存在磨损和老化问题

  【答案】D

  【解析】软件具有以下特点:①软件具有抽象性,是一种逻辑实体;②软件没有明显的制作过程;③软件在使用期间不存在磨损、老化问题,④对硬件和环境具有依赖性;⑤软件复杂性高,成本昂贵;⑥软件开发涉及诸多的社会因素。D项描述是硬件存在的问题。答案选择D选项。

  2. 下面描述不属于软件特点的是( )。

  A. 软件是一种逻辑实体,具有抽象性

  B. 软件在使用中不存在磨损、老化问题

  C. 软件复杂性高

  D. 软件使用不涉及知识产权

  【答案】D

  【解析】软件具有以下特点:①软件是一种逻辑实体,具有抽象性;②软件没有明显的制作过程,③软件在使用期间不存在磨损、老化问题;④软件对硬件和环境具有依赖性;⑤软件复杂性高,成本昂贵,⑥软件开发涉及诸多的社会因素,如知识产权等。答案选择D选项。

  3. 下面对软件特点描述错误的是()

  A.软件没有明显的制作过程

  B. 软件是一种逻辑实体,不是物理实体,具有抽象性

  C. 软件的开发、运行对计算机系统具有依赖性

  D. 软件在使用中存在磨损、老化问题

  【答案】D

  【解析】软件的特点有:①具有抽象性,是逻辑实体;②没有明显的制作过程;③在使用期间不存在磨损、老化问题;④对硬件和环境具有依赖性;⑤复杂性高,成本昂贵;⑥开发涉及诸多的社会因素。答案选择D选项。

  4. 软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于系统软件的是( )。

  A. 编辑软件

  B. 操作系统

  C. 教务管理系统

  D. 浏览器

  【答案】B

  【解析】系统软件是控制和协调计算机及外部设备,支持应用软件开发和运行的软件,操作系统是系统软件;支撑软件是支撑各种软件的开发与维护的软件,又称为软件开发环境,浏览器属于支撑软件;应用软件是用户可以使用的各种程序设计语言,以及用各种程序设计语言编制的应用程序的`集合,编辑软件、教务管理软件属于应用软件。答案选择B选项。

  5. 软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件),下面属于应用软件的是( )。

  A. 学生成绩管理系统

  B. C语言编译程序

  C. UNIX操作系统

  D. 数据库管理系统

  【答案】A

  【解析】应用软件是为解决特定领域的应用而开发的软件,如事务处理软件,工程与科学计算软件,学生成绩管理系统、教务管理系统、浏览器、编辑软件等应用性质不同的各种软件。系统软件是计算机管理自身资源,提高计算机使用效率并服务于其他程序的软件,如操作系统,编译程序,汇编程序,数据库管理系统等。支撑软件是介于系统软件和应用软件之间,协助用户开发软件的工具性软件,包括辅助和支持开发和维护应用软件的工具软件,如需求分析工具软件,设计工具软件,编码工具软件,测试工具软件,维护工具软件等。答案选择A选项。

  6. 数据库管理系统是( )。

  A. 操作系统的一部分

  B. 在操作系统支持下的系统软件

  C. 一种编译系统

  D. 一种操作系统

  【答案】B

  【解析】系统软件主要包括:①操作系统软件;②各种语言的解释程序和编译程序;③各种服务性程序;④各种数据库管理系统。数据库管理系统是一种系统软件,负责数据库中的数据组织、数组操纵、数据维护、控制和保护以及数据服务等。答案选择B选项。

  7. 数据库管理系统是( )。

  A. 操作系统的一部分

  B. 在操作系统支持下的系统软件

  C. 一种编译系统

  D. 一种通信软件系统

  【答案】B

  【解析】系统软件主要包括:①操作系统软件;②各种语言的解释程序和编译程序;③各种服务性程序;④各种数据库管理系统。数据库管理系统是一种系统软件,负责数据库中的数据组织、数组操纵、数据维护、控制和保护以及数据服务等。答案选择B选项。

  8. 下列选项中,不属于数据管理员(DBA)职责的是( )。

  A. 数据库维护

  B. 数据库设计

  C. 改善系统性能,提高系统效率

  D. 数据类型转换

  【答案】D

  【解析】数据库管理员对数据库进行规划、设计、维护、监视等,其主要工作有:①数据库设计,主要是对数据模式进行设计,②数据库维护,对数据库中的数据安全性、完整性、并发控制及系统恢复、数据定期转储等进行实施与维护;③改善系统性能,不断调整内部结构,提高系统效率。答案选择D选项。

  9. 数据库系统的核心是( )。

  A. 数据模型

  B. 软件开发

  C. 数据库设计

  D. 数据库管理系统

  【答案】D

  【解析】数据库系统包括四个部分:数据库、数据库管理系统、数据库应用程序、数据库管理员。其中DBMS是为数据库的建立、使用和维护而配置的软件,是数据库系统的核心。答案选择D选项。

  10. 下列叙述中正确的是( )。

  A. 数据库系统是一个独立的系统,不需要操作系统的支持

  B. 数据库技术的根本目标是要解决数据的共享问题

  C. 数据库管理系统就是数据库系统

  D. 数据库系统由数据库应用系统、数据库和数据库管理系统组成。

  【答案】B

  【解析】A项错误,数据库需要调用操作系统的接口,需要操作系统的支持;C项错误,数据库管理系统(DBMS)是数据库系统的核心,负责数据库中的数据组织、数据操作、数据维护、控制及保护和数据服务等;D项错误,数据库应用系统是数据库系统再加上应用软件及应用界面这三者所组成,具体包括:数据库、数据库管理系统、数据库管理员、硬件平台、软件平台、应用软件、应用界面。答案选择B选项。

  计算机二级《C语言》基础模拟题及答案 3

  1.若有以下数组说明,则i=10;a[a[i]]元素数值是(C )。

  int a[12]={1,4,7,10,2,5,8,11,3,6,9,12};

  A、10

  B、9

  C、6

  D、5

  先算a[a[i]]内层的a[i],由于i=10,因此a[i]即a[10].

  a[10]对应下面数组中的元素为9. 因此a[a[i]]即为a[9]

  a[9]对应下面数组中的元素为6. 因此a[9]即为6

  2.若有说明:int a[][3]={{1,2,3},{4,5},{6,7}}; 则数组a的第一维的大小为: ( B )

  A、2

  B、3

  C、4

  D、无确定值

  5 7

  D、3 6 9

  二维数组的一维大小,即指二维数组的行数,在本题中,按行对二维数组赋值,因此内层有几个大括号,数组就有几行

  3.对二维数组的正确定义是(C )

  详见教材P149~152,二维数组的定义、初始化

  类型符 数组名 [常量表达式][常量表达式]

  二维数组可以看做是矩阵

  类型符是指数组中数组元素的类型;数组名要符合标识符命名规则;第一个常量表达式是指数组的行数;第二个常量表达式是指数组的列数;常量表达式的值只能是整数,不可以是变量,而且从1开始计数。

  一维数组初始化时可以省略数组长度

  二维数组初始化时可以省略行数,但不能省略列数

  选项A,B,都省略了列数

  选项D,不符合二维数组定义的一般形式,行、列常量表达式应该放在不同的[]中

  A、int a[ ][ ]={1,2,3,4,5,6};

  B、int a[2] []={1,2,3,4,5,6};

  C、int a[ ] [3]={1,2,3,4,5,6};

  D、int a[2,3]={1,2,3,4,5,6};

  4.已知int a[3][4];则对数组元素引用正确的是__C___

  A、a[2][4]

  B、a[1,3]

  C、a[2][0]

  D、a(2)(1)

  详见教材P150,数组元素的引用

  数组名[下标] [下标]

  引用数组元素时,[ ]中的下标为逻辑地址下标,只能为整数,可以为变量,且从0开始计数

  第一个[下标]表示行逻辑地址下标,第二个[下标]表示列逻辑地址下标。

  本题图示详见P149图6.7

  因此a的行逻辑地址范围0~2;a的列逻辑地址范围0~3;

  选项A,列逻辑地址下标超过范围

  选项B,D,的引用形式不正确。

  5.C语言中函数返回值的类型是由 A 决定的

  A、函数定义时指定的类型

  B、 return语句中的表达式类型

  C、 调用该函数时的实参的数据类型

  D、形参的数据类型

  6. 在C语言中,函数的数据类型是指(A )

  A、 函数返回值的数据类型

  B、 函数形参的数据类型

  C、 调用该函数时的实参的数据类型

  D、任意指定的数据类型

  7.在函数调用时,以下说法正确的是( B )

  A、函数调用后必须带回返回值

  B、实际参数和形式参数可以同名

  C、函数间的数据传递不可以使用全局变量

  D、主调函数和被调函数总是在同一个文件里

  8. 在C语言中,表示静态存储类别的关键字是: ( C )

  A、 auto

  B、 register

  C、static

  D、extern

  9.未指定存储类别的变量,其隐含的存储类别为(A )。

  A、auto

  B、static

  C、extern

  D、register

  10. 若有以下说明语句:

  struct student

  { int num;

  char name[ ];

  float score;

  }stu;

  则下面的叙述不正确的是: (D )

  A、 struct是结构体类型的关键字

  B、 struct student 是用户定义的结构体类型

  C、 num, score都是结构体成员名

  D、 stu是用户定义的结构体类型名

  11.若有以下说明语句:

  struct date

  { int year;

  int month;

  int day;

  }brithday;

  则下面的叙述不正确的是__C___.

  A、 struct是声明结构体类型时用的关键字

  B、 struct date 是用户定义的结构体类型名

  C、 brithday是用户定义的'结构体类型名

  D、year,day 都是结构体成员名

  12. 以下对结构变量stul中成员age的非法引用是 B

  struct student

  { int age;

  int num;

  }stu1,*p;

  p=&stu1;

  A、 stu1.age

  B、 student.age

  C、 p->age

  D、(*p).age

  13.设有如下定义:

  struck sk

  { int a;

  float b;

  }data;

  int *p;

  若要使P指向data中的a域,正确的赋值语句是 C

  A、 p=&a;

  B、 p=datA、a;

  C、p=&datA、a;

  D、*p=datA、a;

  14.设有以下说明语句:

  typedef struct stu

  { int a;

  float b;

  } stutype;

  则下面叙述中错误的是( D )。

  A、struct是结构类型的关键字

  B、struct stu是用户定义的结构类型

  C、a和b都是结构成员名

  D、stutype是用户定义的结构体变量名

  15.语句int *p;说明了 C 。

  A、p是指向一维数组的指针

  B、p是指向函数的指针,该函数返回一int型数据

  C、p是指向int型数据的指针

  D、p是函数名,该函数返回一指向int型数据的指针

  16.C语言中,关系表达式和逻辑表达式的值是( B ) 。

  A、0

  B、 0或1

  C、 1

  D、‘T’或’F’

  17. 下面( D )表达式的值为4.

  A、 11/3

  B、 11.0/3

  C、 (float)11/3

  D、 (int)(11.0/3+0.5)

  【解析】(1)相同数据类型的元素进行数学运算(+、-、*、/)得到结果还保持原数据类型。

  (2)不同数据类型的元素进行数学运算,先要统一数据类型,统一的标准是低精度类型转换为高精度的数据类型。

  选项A,11与3为两个整数,11/3结果的数据类型也应为整数,因此将3.666666的小数部分全部舍掉,仅保留整数,因此11/3=3.

  选项B,11.0为实数,3为整数,因此首先要统一数据类型,将整型数据3转换为3.0,转换后数据类型统一为实型数据,选项B变为11.0/3.0,结果的数据类型也应为实型数据,因此选项B 11.0/3=3.666666

  选项C,先将整数11强制类型转换,转换为实型11.0,因此选项C变为11.0/3,其后计算过程、结果与选项B同

  选项D,首先计算11.0/3,其计算过程、结果与选项B同,得到3.666666;再计算3.666666+0.5=4.166666,最后将4.166666强制类型转换为整型,即将其小数部分全部舍掉,结果为4

  18.设整型变量 a=2,则执行下列语句后,浮点型变量b的值不为0.5的是( B )

  A、b=1.0/a

  B、b=(float)(1/A、

  C、b=1/(float)a

  D、b=1/(a*1.0)

  19. 若“int n; float f=13.8;”,则执行“n=(int)f%3”后,n的值是(A)

  A、1

  B、4

  C、4.333333

  D、4.6

  【解析】“(int)f“表示将f中的值强制类型转换为整型,即将13.8的小数部分舍掉,转换为13;然后计算13%3,结果为1,再将结果赋给变量n,因此n的值为1

  20. 以下对一维数组a的正确说明是: D

  A、char a(10);

  B、 int a[];

  C、int k=5,a[k];

  D、char a[3]={‘a’,’b’,’c’};

  【解析】详见教材P143~144,一维数组的定义、初始化

  类型符 数组名 [常量表达式]

  类型符是指数组中数组元素的类型;数组名要符合标识符命名规则;常量表达式是指数组的长度(数组中包含元素的个数),其值只能是整数,不可以是变量,而且从1开始计数。

  选项A,常量表达式只能放在中括号 [ ]中

  选项B,只有在对数组初始化(即赋值)的时候才可以省略数组的长度,B中并未对a进行初始化。

  选项C,常量表达式不能为变量。

  21.以下能对一维数组a进行初始化的语句是:( C )

  A、int a[5]=(0,1,2,3,4,)

  B、 inta(5)={}

  C、 int a[3]={0,1,2}

  D、 int a{5}={10*1}

  【解析】详见教材P145,一维数组的定义、初始化

  选项B,D,常量表达式只能放在中括号 [ ]中

  选项A,数组可以看做是若干个相同数据类型元素的有序集合,因此以集合的形式对其初始化,使用{ }对其初始化,选项A用了( ).

  22.在C语言中对一维整型数组的正确定义为 D 。

  A、int a(10);

  B、int n=10,a[n];

  C、int n;a[n];

  D、#define N 10

  23、已知:int a[10]; 则对a数组元素的正确引用是( D )。

  A、a[10]

  B、a[3.5]

  C、a(5)

  D、a[0]

  【解析】详见教材P144,数组元素的引用

  数组名[下标]

  引用数组元素时,[ ]中的下标为逻辑地址下标,只能为整数,可以为变量,且从0开始计数

  int a[10]表示定义了一个包含10个整型数据的数组a,数组元素的逻辑地址下标范围为0~9,即a[0] 表示组中第1个元素; a[1] 表示组中第2个元素; a[2] 表示组中第3个元素; ......;a[9] 表示组中第10个元素.

  选项A,超过了数组a的逻辑地址下标范围;

  选项B,逻辑地址下标只能为整数

  选项C,逻辑地址下标只能放在[ ]中

  24.若有以下数组说明,则i=10;a[a[i]]元素数值是(C )。

  int a[12]={1,4,7,10,2,5,8,11,3,6,9,12};

  A、10

  B、9

  C、6

  D、5

  【解析】先算a[a[i]]内层的a[i],由于i=10,因此a[i]即a[10].

  a[10]对应下面数组中的元素为9. 因此a[a[i]]即为a[9]

  a[9]对应下面数组中的元素为6. 因此a[9]即为6

  25.若有说明:int a[][3]={{1,2,3},{4,5},{6,7}}; 则数组a的第一维的大小为: ( B )

  A、2

  B、3

  C、4

  D、无确定值

  【解析】二维数组的一维大小,即指二维数组的行数,在本题中,按行对二维数组赋值,因此内层有几个大括号,数组就有几行

  26.(A )是构成C语言程序的基本单位。

  A、函数

  B、过程

  C、子程序

  D、子例程

  27.C语言程序从 C 开始执行。

  A、 程序中第一条可执行语句

  B、 程序中第一个函数

  C、 程序中的main函数

  D、包含文件中的第一个函数

  28、以下说法中正确的是( C )。

  A、C语言程序总是从第一个定义的函数开始执行

  B、在C语言程序中,要调用的函数必须在main( )函数中定义

  C、C语言程序总是从main( )函数开始执行;

  D、C语言程序中的main( )函数必须放在程序的开始部分

  29.下列关于C语言的说法错误的是( B ) 。

  A、 C程序的工作过程是编辑、编译、连接、运行

  B、 C语言不区分大小写。

  C、 C程序的三种基本结构是顺序、选择、循环

  D、C程序从main函数开始执行

  30.下列正确的标识符是(C )。

  A、-a1

  B、a[i]

  C、a2_i

  D、int t

  5~8题为相同类型题

  考点:标识符的命名规则

  只能由字母、数字、下划线构成

  数字不能作为标识符的开头

  关键字不能作为标识符

  选项A中的“-” ,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3)

  31.下列C语言用户标识符中合法的是(B )。

  A、3ax

  B、x

  C、case

  D、-e2 E)union

  选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1);

  32.下列四组选项中,正确的C语言标识符是( C )。

  A、 %x

  B、a+b

  C、a123

  D、123

  选项A中的“%” ,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2)

  33、下列四组字符串中都可以用作C语言程序中的标识符的是( A)。

  A、print _3d db8 aBc

  B、Iam one_half start$it 3pai

  C、str_1 Cpp pow while

  D、Pxq My->book line# His.age

  选项B中的“”,”$” ,选项D中“>”,”#”,”.”,”-”不满足(1);选项C中的while为关键字,不满足(3)

  34.C语言中的简单数据类型包括(D )。

  A、整型、实型、逻辑型

  B、整型、实型、逻辑型、字符型

  C、整型、字符型、逻辑型

  D、整型、实型、字符型

  35.在C语言程序中,表达式5%2的结果是 C 。

  A、2.5

  B、2

  C、1

  D、3

  %为求余运算符,该运算符只能对整型数据进行运算。且符号与被模数相同。5%2=1; 5%(-2)=1;(-5)%2=-1;(-5)%(-2)=-1;

  /为求商运算符,该运算符能够对整型、字符、浮点等类型的数据进行运算,5/2=2

  计算机二级《C语言》基础模拟题及答案 4

  1.C语言编译程序的功能是( )。

  A. 执行一个C语言编写的源程序

  B. 把C源程序翻译成ASCII码

  C. 把C源程序翻译成机器代码

  D. 把C源程序与系统提供的库函数组合成一个二进制执行文件

  【答案】C

  【解析】编译程序的功能是将“高级语言”翻译为“机器语言”。每条C语言语句,经过编译最终都将转换成二进制的机器指令。答案选择C选项。

  2. 计算机高级语言程序的运行方法有编译执行和解释执行两种,以下叙述中正确的是( )。

  A. C语言程序仅可以编译执行

  B. C语言程序仅可以解释执行

  C. C语言程序既可以编译执行,又可以解释执行;

  D. 以上说法都不对

  【答案】A

  【解析】编译执行是指程序执行前需要一个专门的编译过程把程序编译成机器语言的文件,再次运行时不需要重新翻译,执行效率高;解释执行是指每个语句都是执行的时候才翻译,执行效率低。用C语言编写的程序必须经过编译器编译后,转换为二进制的机器指令来运行。答案选择A选项。

  3. 以下叙述中错误的是( )。

  A. C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令

  B. C程序经过编译、链接步骤之后才能形成一个真正可执行的二进制机器指令文件

  C. 用C语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件中

  D. C语言源程序经编译后生成后缀为的目标程序

  【答案】A

  【解析】A项错误,注释语句不会被翻译成二进制的机器指令。C源程序经过C编译程序编译之后生成后缀为的二进制文件(称为目标文件),然后由“链接程序”(Link)的软件把文件与各种库函数连接起来生成一个后缀为的可执行文件。答案选择A选项。

  4. 以下叙述中错误的是()

  A.C语言的可执行程序是由一系列机器指令构成的

  B. 用C语言编写的源程序不能直接在计算机上运行

  C. 通过编译得到的二进制目标程序需要连接才可以运行

  D. 在没有安装C语言集成开发环境的机器上不能运行C源程序生成的exe文件

  【答案】D

  【解析】A项正确,C语言的可执行程序是由一系列机器指令组成的;BC项正确,用C语言编写的源程序必须经过编译,生成二进制目标代码,再经过连接才能运行;D项错误,C语言经过编译链接后的`二进制目标代码可以脱离C语言集成开发环境独立运行。答案选择D选项。

  5. 以下叙述正确的是( )。

  A. C编译程序把文件后缀为.c的源程序文件编译成文件后缀为的'二进制文件

  B. C编译程序把文件后缀为.c的源程序文件编译成文件后缀为的可执行文件

  C. C编译程序把文件后缀为的二进制文件编译成文件后缀为的可执行文件

  D. 链接程序把文件后缀为.c的源程序文件链接成文件后缀为的可执行文件

  【答案】A

  【解析】C编译程序把文件后缀为C的源程序文件编译成文件后缀为的二进制文件,链接将一个或多个目标文件与程序用到的库文件连接起来,形成一个可以在操作系统直接运行的执行程序,故排除B、C、D项,答案选择A选项。

  6. 以下叙述中正确的是(A. 在C语言程序中,main函数必须放在其他函数的最前面

  B. 每个后缀为.c的C语言源程序都可以单独进行编译

  C. 在C语言程序中,只有main函数才可以单独进行编译

  D. 每个后缀为.c的C语言源程序都应该包含一个main函数

  【答案】B

  【解析】main函数可以在程序的任何位置。每一个可执行的C程序都必须有一个且只能有一个主函数。后缀名为.c的C语言源程序都可以单独进行编译。main函数只是让执行程序的系统知道该从哪里开始执行程序(从主函数处执行),其他有关这个程序的子函数是通过函数调用来实现其功能(不需main函数)。答案选择B选项。

  7. 以下叙述中错误的是( )。

  A. C语言编写的函数源程序,其文件名后缀可以是.c

  B. C语言编写的函数都可以作为一个独立的源程序文件

  C. C语言编写的每个函数都可以进行独立的编译并执行;

  D. 一个C语言程序只能有一个主函数

  【答案】C

  【解析】C源程序经过C编译程序编译之后生成一个后缀为的二进制文件(称为目标文件),然后由称为“连接程序”(Link)的软件,把此文件与C语言提供的各种库函数连接起来生成一个后缀为的可执行文件。只有含有main函数的经过编译链接才能执行。答案选择C选项。

  8. 以下叙述中错误的是(A. 一个C程序可以包含多个不同名的函数

  B. 一个C程序只能有一个主函数

  C. C程序在书写时,有严格的缩进要求,否则不能编译通过

  D. C程序的主函数必须用main作为函数名

  【答案】C

  【解析】一个C程序有且只有一个主函数main。一个C程序可以包含多个不同名字的子函数。C程序在书写时没有严格的缩进要求。答案选择C选项。

  9. 以下叙述中正确的是( )。

  A. C语言规定必须用main作为主函数名,程序将从此开始执行

  B. 可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行

  C. C语言程序将从源程序中第一个函数开始执行;

  D. main的各种大小写拼写形式都可以作为主函数名,如:MAIN,Main等

  【答案】A

  【解析】用户不能指定某函数为主函数,C语言规定,程序从main函数开始执行,从main函数退出,C语言函数名区别大小写。答案选择A选项。

  10. 下列叙述中错误的是( )。

  A. C程序可以由一个或多个函数组成

  B. C程序可以由多个程序文件组成

  C. 一个C语言程序只能实现一种算法

  D. 一个C函数可以单独作为一个C程序文件存在

  【答案】C

  【解析】一个C程序可以有一个或多个程序文件,也可以有一个或多个函数,所以一个C语言程序可以实现多种算法,答案选择C选项。

【计算机二级《C语言》基础模拟题及答案】上海花千坊相关的文章:

2016年计算机二级《C语言》基础模拟题及答案08-17

2017计算机二级C语言基础习题及答案08-26

计算机二级C语言上机精选模拟题及答案09-12

2016计算机二级《C语言》模拟题及答案09-08

计算机二级《C语言》基础练习题及答案10-10

计算机二级C语言专题模拟题及答案201710-11

计算机二级《C语言》基础练习题及答案10-13

2017计算机二级C语言基础训练及答案08-19

计算机二级C语言选择模拟题及答案11-09