全国计算机二级C语言笔试主要考察考生对于C语言的基础知识、编程能力和问题解决能力。以下是针对题目中涉及的一些关键知识点的详细解析:
1. **线性表的存储结构**:
- 线性表的存储结构有两种:顺序存储和链式存储。顺序存储结构将元素紧凑地存储在一块连续的内存区域,而链式存储结构则通过指针连接元素。通常情况下,链式存储结构所需的存储空间要大于顺序存储,因为它需要额外的存储来保存指针。
2. **栈的特性**:
- 栈是一种后进先出(LIFO)的数据结构。栈顶指针的变化决定了栈中元素的添加和删除,而栈底指针在栈的操作中通常是固定的。
3. **软件测试的目的**:
- 软件测试主要是为了发现程序中的错误,而不是改正错误。改正错误通常是程序员的工作。
4. **软件危机**:
- 软件危机体现在软件过程不规范、开发效率低下、质量难以控制以及成本持续上升等问题上。
5. **软件生命周期**:
- 软件生命周期包括软件的整个生命周期,从需求分析、设计、实现、测试,到使用维护和退役。
6. **面向对象的继承**:
- 继承是面向对象编程的一个重要概念,它允许一个类(子类)继承另一个类(父类)的属性和行为。
7. **数据库类型划分**:
- 层次型、网状型和关系型数据库的区别在于数据之间的联系方式。关系型数据库是目前最常见的一种,基于表格模型。
8. **实体关系模型**:
- 工作人员与计算机之间的关系是多对多,因为一个工作人员可以使用多台计算机,反之亦然。
9. **数据库模式**:
- 外模式反映了用户对数据的需求,是用户可以看到和使用的数据视图。
10. **关系操作**:
- 由关系R和S得到关系T的操作是自然连接,因为T包含了R和S的交集,并且只保留了相同的列。
11. **结构化程序设计**:
- 结构化程序设计强调使用顺序、分支和循环三种基本结构,C语言中的模块化是通过函数实现的。
12. **简单程序设计步骤**:
- 正确的步骤是先确定数据结构,然后确定算法,接着编码并上机调试,最后整理文档。
13. **C程序运行及数据类型**:
- C程序的计算以二进制方式进行,整型变量用于存放整数,实型变量用于存放浮点数,但C程序中的计算并不都是以十进制方式进行。
14. **C语言表达式**:
- 表达式B)`a=x!=y;`是正确的,它等价于`a=(x!=y)?1:0`,表示比较x和y是否相等。
15. **常量表示**:
- 选项D)`"\007"`是一个合法的字符串常量,它表示八进制数字7。
16. **赋值运算符**:
- 表达式`a+=a-=a=9`等价于`a=a-(a=9)+a`,最终结果为0。
17. **if语句**:
- 变量`a++`不能用在条件判断部分,因为它不是一个布尔表达式。
18. **if...else语句**:
- 给定程序中,由于`!a`为真(即a为0),所以不会执行`else if`部分,因此b不会增加,输出结果是0。
19. **switch语句**:
- 选项B)`switch((int)x/2.0)`是错误的,因为switch语句的case标签必须是整型常量或常量表达式。
以上是对2010年9月全国计算机二级C语言笔试试题中部分知识点的详细解释,涵盖数据结构、程序设计、软件工程、数据库理论等多个方面。学习这些知识点有助于理解C语言编程基础,提高软件开发能力。