【计算机二级C考试知识点】
1. **软件质量保证**:软件质量主要通过软件测试来确保,测试是发现和修复错误的重要手段。软件测试是保证软件可靠性和可用性的重要步骤。
2. **DMA(直接存储器访问)**:DMA方式允许外部设备直接与内存交换数据,减少了CPU的介入,提高了数据传输效率。
3. **队列数据结构**:线性顺序队列可能出现“假溢出”,即数组满但并未真正用完所有空间;线性循环队列通过首尾指针的循环移动避免了这个问题。
4. **高级语言与低级语言**:高级语言编写的程序通常比低级语言编写的程序更易于理解和编写,但执行速度可能较慢,因为需要额外的编译和解释过程。
5. **线性表**:线性表是最基础的数据结构之一,其存储方式分为顺序存储(数组)和链式存储(链表)。
6. **进程组成**:进程通常由程序、进程控制块(PCB)和数据三部分组成,而非文件控制块。
7. **面向对象编程**:在面向对象编程中,派生类可以继承一个或多个基类,实现多继承。
8. **操作系统角色**:操作系统是用户与硬件之间的接口,提供资源管理和用户服务。
9. **内存容量限制**:个人计算机中内存的最大容量受到地址总线宽度的限制,决定了能寻址的最大内存空间。
10. **软件维护问题**:软件维护的难点之一是保持软件配置的完整性和一致性,尤其是在长期的更新和修改后。
**选择题相关知识点:**
11. **排序算法**:插入排序是一种基本排序方法,它将元素插入到已排序序列的合适位置。
12. **栈的性质**:栈是后进先出(LIFO)的数据结构,X、Y、Z依次入栈,Z最先出栈,因此Z不可能最先出栈,即Z不能在X之前出栈。
13. **进程状态转换**:等待状态(阻塞状态)不能直接转为执行状态,必须先变为就绪状态。
14. **链表的特性**:线性链表的地址不一定连续,这是链式存储的一大特点。
15. **软件测试方法**:白盒测试关注程序的内部逻辑,黑盒测试关注程序功能的外部表现。
16. **C++程序执行**:此程序中`Fun(i++,i)`会先递增i,然后返回i的旧值与新值之和,所以输出是21。
17. **C++基础知识**:C++程序可以不包含`return`语句,特别是在main函数中;头文件可以包含其他头文件,如`<iostream>`;变量可以在函数外部定义。
18. **循环终止条件**:while(y--)当y减到0时退出循环,因此循环结束后y为-1。
19. **字符串操作**:strcpy和strcat是C语言中的字符串操作函数,str2="new str"是C++中的初始化字符串,不是操作语句;str5未初始化,不能作为strcpy的目标。
20. **逻辑运算符短路**:`++x||++y||++z`,由于`++x`为真,后面的`++y`和`++z`不会执行,故x=1,y=z=0。
21. **联合体与结构体**:联合体内的成员共享存储空间,所以程序输出结果取决于最后赋值的成员。
以上内容涵盖了计算机二级C考试中的核心知识点,包括数据结构、程序设计、操作系统、内存管理、软件测试等多个方面。