- 全国计算机等级考试一本通 二级C语言
- 全国计算机等级考试命题研究中心 未来教育教学与研究中心
- 1703字
- 2020-06-24 19:43:17
2.1 语言基础知识
考点1 C语言概述
真考链接
此考点属于简单识记内容,在选择题中的考核概率为40%。
C语言是一种结构紧凑、使用方便、程序执行效率高的编程语言,它有9种控制语句、32个关键字(见表2.1)和34种运算符。C语言的数据结构也非常丰富,它的多种数据类型可以实现如链表、树、栈等复杂的运算,并且用结构化控制语句(if...else,for语句等)来实现函数的模块化。C语言的语法不太严格,程序设计自由度大,用C语言编写的程序可以直接访问物理地址,还可以直接对硬件进行操作。C语言是一种移植性比较好的语言。
表2.1 C语言关键字
小提示
C语言的语法要求不太严格,程序设计自由度大。
真题精选
【例1】下列叙述中,正确的是( )。
A.C程序中的注释只能出现在程序的开始位置和语句的后面
B.C程序书写格式严谨,要求一行内只能写一个语句
C.C程序的书写格式自由,一个语句可以写在多行上
D.用C语言编写的程序只能放在一个程序文件中
【答案】 C
【解析】C程序中注释可以放在任意位置;C语言的语法限制不严格,所以可以将多条语句放在同一行上;C程序可以放在多个程序文件中,并使用include语句进行文件包含。故本题答案为C。
【例2】下列选项中,由C语言提供的合法关键字的是( )。
A.swicth B.cher C.default D.Case
【答案】 C
【解析】选项A和选项B为拼写错误,选项D中出现了大写字母。
考点2 C语言的构成
(1)C语言的源程序是由函数构成的,每一个函数完成相对独立的功能,其中,每个C源程序中必须有且只能有一个主函数(main()函数)。
(2)C程序总是从main()函数开始执行。
(3)在函数后面用一对花括号“{}”括起来的部分称为函数体。
(4)C语言规定每个语句以分号(;)结束,分号是语句组成中不可缺少的部分,它在每条语句的最后出现。但预处理命令,函数头之后不能加分号。
(5)程序的注释部分应放在“/ *”与“*/”之间,“/”和“*”之间不能有空格,注释部分允许出现在程序的任何位置。
(6)程序中以“#”开头的语句称为预处理命令。
真考链接
考点2属于简单识记内容,多以选择题形式出现。在选择题中的考核概率为60%。在操作题中的考核概率为10%
下面是一个简单的C程序例子:
#include <stdio.h> /*预处理命令。 调用输入/输出函数时,应包含头文件stdio.h*/
main() /*主函数*/
{ int a,b,c; /*定义变量a、b、c*/
a = 2;b = 3; /*给变量赋值*/
c = a + b; /*将a与b的和赋给变量c*/
printf("a = % d,b = % d,c = % d",a,b,c); /*输出变量a、b、c的值*/
}
小提示
程序中可以把main函数放在任何位置,但程序是从main函数开始执行的。
真题精选
【例1】下列叙述中,正确的是( )。
A.C程序的基本组成是语句 B.C程序中的每一行只能写一条语句
C.简单C语句必须以分号结束 D.C语句必须在一行内写完
【答案】 C
【解析】函数是C程序的基本组成单位;C语言规定一条语句可以写在多行;C语言允许多条语句写在同一行。故本题答案为C。
【例2】C语言规定,在一个源程序中,main()函数的位置( )。
A.必须在最开始 B.必须在系统调用的库函数的后面
C.可以任意 D.必须在最后
【答案】 C
【解析】程序中可以把main()函数放在任何位置,但程序是从main()函数开始执行的。
【例3】以下说法正确的是( )。
A.C程序是从第一个定义的函数开始执行的
B.在C程序中,要调用的函数必须在main()函数中定义
C.C程序是从main()函数开始执行
D.C程序中的main()函数必须放在程序的开始部分
【答案】 C
【解析】C语言程序总是从程序的main()函数开始执行。main()函数可以放在C程序的任何位置,包括最前面和最后面。C程序中的函数可以任意地相互调用,它们之间的关系是平等的。
【例4】下列给定程序中函数fun()的功能是:求出以下数列的前n项之和,和值通过函数值返回。
1,2,3,4,5,6,…
例如,若n=5,则应输出15。
请改正程序中的错误,使其得出正确的结果。
注意:不得增行或删行,也不得更改程序的结构!
试题程序
#include <stdlib.h>
#include <stdio.h>
/****found****/
int fun(int n);
{ /****found****/
int i
/****found****/
sum = 0;
for(i = 1;i < = n;i++)
{ /****found****/
sum = sum + i;
}
return sum;
}
【答案】错误1:函数头之后不能加分号;错误2:语句末尾没加“;”号;错误3:变量sum未定义。
【解析】本题考查C语言的构成,注意程序中的语法错误。