重庆大学软件技术基础考试题库:C语言重点知识解析

需积分: 9 0 下载量 91 浏览量 更新于2024-08-05 收藏 2.37MB DOCX 举报
"该资源包含了重庆大学针对大学生的软件技术基础和计算机科学的考试作业题目,涵盖编程基础知识、C语言语法、字符串处理、输入/输出、程序设计概念等多个方面。" 1. C语言中的指针操作是核心概念之一。在问题2中,`*p`表示解引用操作,获取`p`所指向的变量的值,因此`i=*p`将`p`指向的值赋给`i`,等同于`i=j`。选项B中的`*p=*&j`将`j`的地址赋给了`p`所指向的变量,而选项C和D则是错误的赋值方式。 2. 关于C语言标识符的规则,选项A提到可以由汉字组成是错误的,因为标识符不能包含除ASCII字符集外的其他字符;选项B错误,因为标识符可以以字母或下划线开头;选项C错误,关键字不能用作用户标识符,否则会导致编译错误;选项D正确,因为在C语言中,区分大小写,所以`Area`和`area`被视为不同的标识符。 3. 在C语言中,字符串是以`\0`作为结束标志的字符数组。问题4中,`printf("%s\n",c);`会打印从`c`开始到`\0`为止的所有字符,因此输出结果是`ab`,因为`'\0'`在`'c'`之前出现,选项D正确。 4. 问题5没有给出具体代码,无法确定输出结果,但通常涉及到了整数和浮点数的运算,可能考察的是类型转换和算术运算。 5. 面向过程的程序设计语言的三大特征是变量、赋值操作和重复(或循环),如for、while等结构,选项B正确。继承和派生是面向对象编程的特性,而发送消息是面向对象编程中对象间交互的方式。 6. 定义`compare`函数来比较字符串,如果返回值为负,则表示`s1`小于`s2`。若运行结果为-32,说明`s1`的第一个字符的ASCII码小于`s2`的第一个字符的ASCII码减去32,因此填空正确答案是A、`*s1!=*s2`。 7. 问题8中,正确格式的输入语句应该使用`%f%d`来分别读取浮点型和无符号整型变量,因此选项C正确。 8. 问题9、10、11、12、13、14和15没有提供具体代码或上下文,无法直接给出答案,但它们分别涉及到变量间的运算、宏定义、C程序的结构、文件操作、逻辑表达式的求值以及C语言的字符常量和数值转换等知识点。 这些题目涵盖了C语言的基础语法、数据类型、指针、字符串、输入/输出、程序控制结构以及预处理器等多个关键知识点,对于学习和复习C语言的基础知识非常有帮助。