2017年计算机二级C语言考前试题及答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2017年计算机二级C语言考前试题及答

一、选择题(每题2分,共40分)
1. C语言中,以下哪个选项是合法的数据类型关键字?
A. float
B. integer
C. char
D. double
答案:A、C、D
2. 在C语言中,以下哪个选项不是合法的变量名?
A. a
B. b1
C. int
D. sum
答案:C
3. 若变量已正确定义并赋值,以下哪个选项中表示变量地址的是?
A. &a
B. a
C. a
D. sizeof(a)
答案:A
4. 在C语言中,以下哪个选项表示逻辑运算符?
A. &&
B. ||
C. !
D. All of the above
答案:D
(以下题目略)
二、填空题(每题2分,共40分)
11. 在C语言中,定义一个整型变量a,并赋值为10的
代码是:______。

答案:int a=10;
12. 若已有定义int a=5;,执行语句printf("%d", a++); 后,a的值为______。

答案:6
13. 在C语言中,判断一个整数是否为偶数的表达式是:
______。

答案:a%2==0
14. 在C语言中,实现两个变量交换的代码是:______。

答案:temp=a; a=b; b=temp;
(以下题目略)
三、编程题(共20分)
21. 编写一个程序,实现输入一个整数,输出该整数的阶乘。

```c
#include <stdio.h>
int main() {
int n, i, factorial = 1;
printf("Enter an integer: ");
scanf("%d", &n);
for (i = 1; i <= n; i++) {
factorial = i;
}
printf("Factorial of %d is %d\n", n, factorial);
return 0;
}
```
22. 编写一个程序,实现输入一个字符串,输出该字符串的长度。

```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
printf("Enter a string: ");
gets(str); // 使用gets函数读取字符串,注意:存在安全风险,推荐使用fgets
printf("Length of the string is: %lu\n", strlen(str));
return 0;
}
```
四、问答题(共20分)
23. 请简要解释C语言中的静态存储区和动态存储区的区别。

答案:静态存储区是程序运行期间分配的固定大小的内存
区域,用于存储全局变量和静态局部变量。

动态存储区是程序运行期间根据需要动态分配和释放的内存区域,用于存储局部变量和动态分配的内存。

24. 请简要介绍C语言中的结构体和共用体的区别。

答案:结构体(struct)用于存储不同类型的数据项,每个结构体成员都有独立的存储空间。

共用体(union)用于存
储不同类型的数据项,但共用体成员共享同一块内存空间,只能存储其中一个成员的值。

总结:本套考前试题涵盖了C语言的基本概念、语法规则
和编程技巧,旨在帮助考生巩固所学知识,提高应试能力。

希望考生在备考过程中,多做练习,熟练掌握C语言的编程技巧,为顺利通过计算机二级C语言考试奠定基础。

相关文档
最新文档