【知识点详解】
1. 数据的存储结构:存储结构是指数据在计算机内存中的组织方式,它包括逻辑结构在计算机中的表示,比如顺序存储、链式存储等。在选择题中,选项D "数据的逻辑结构在计算机中的表示" 正确。
2. 栈的特性:栈是一种特殊的线性表,具有后进先出(LIFO)的特点。选项B "栈只能顺序存储" 是错误的,因为栈虽然通常用顺序存储结构实现,但并不意味着只能如此。
3. 排序算法比较次数:冒泡排序在最坏的情况下需要比较N*(N-1)/2次,快速排序在平均情况下接近这个数量。因此,选项D "快速排序为N(N-1)/2" 是正确的。
4. 顺序查找:在长度为N的线性表中顺序查找,在最坏的情况下需要比较N次。选项C "n" 是正确的。
5. 线性表的存储:线性表可以使用顺序存储或链式存储,不一定存储空间连续,且元素的顺序可以任意。选项A "存储空间不一定是连续,且各元素的存储顺序是任意的" 是正确的。
6. 软件测试的目的:软件测试是为了找出程序中的错误,而不是证明程序无误。选项C "软件测试的目的是尽可能地多发现程序中的错误" 是正确的。
7. 模块独立性:为了提高软件质量,模块应具有高内聚(模块内部元素相关性强)和弱耦合(模块间相互依赖小)的特性。选项B "模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱" 是正确的。
8. 软件的定义:软件是由程序、数据及相关文档组成的集合。选项D "软件是程序、数据与相关文档的集合" 是正确的。
9. 数据独立性:数据独立性是指应用程序与数据的存储结构和逻辑结构之间的独立性,允许两者独立变化。选项D "以上三种说法都不对" 是正确的。
10. 数据模型:树形结构表示实体之间联系的模型是层次模型。选项C "层次模型" 是正确的。
11. 算法特性:算法的五个性质包括有穷性、可行性、确定性、输入和输出。简洁性不是算法的基本特性。选项B "简洁性" 不正确。
12. C语言常量:合法的C语言常量可以是整数、浮点数、字符等。选项A "-80." 是一个合法的浮点数常量。
13. C语言算法:C语言实现的算法可以没有输入,但至少要有输出。选项C "用 C 程序实现的算法可以没有输入但必须要有输出" 是正确的。
14. 用户标识符:在C语言中,标识符不能以数字开头,"sizeof"是预定义的关键字,不能作为用户标识符。选项D "sizeof" 不合法。
15. 数字字符常量:浮点数常量可以是科学计数法,但指数部分不能是小数。选项B "1.234e0.4" 不是合法的常量。
16. ASCII值:字符'0'的ASCII值是48,'1'的ASCII值是49。程序输出结果是先输出'b'(ASCII值50),然后b自增变为51,所以输出是"50,2"。选项B "50,2" 是正确的。
17. 顺序输出:程序中使用了预增和后增运算符,先执行前一个printf中的++n,再输出m,所以第一个输出是"1235";第二个printf中,n自增后再输出,m也自增后再输出,得到"3514"。选项A "12353514" 是正确的。
18. 输入语句:在C语言中,用scanf读取字符串时,字符串需要用地址传递,即使用&。因此,选项B "scanf("%d%s",&b,c);" 是正确的。
19. 输入数据:在给定程序中,想要输入数据使M为123,N为34,P为45,输入格式应为 "m=123 n=34 p=45",注意空格。
这些知识点涵盖了数据结构、算法、编程语言(C语言)、软件工程、数据库原理等多个方面,是计算机科学基础的重要组成部分。理解和掌握这些知识点对于学习和解决实际问题至关重要。