谭浩强C语言习题集解析与答案分享

需积分: 0 0 下载量 158 浏览量 更新于2024-09-16 收藏 36KB DOC 举报
本文档主要包含了谭浩强编写的C语言教材中的部分习题及其答案,适合作为学习和参考资源。以下是对这些题目知识点的详细解析: 1. **单项选择题** - 题1考察的是C语言的基本语法,选项C正确,因为`inta=10,*b=&a;`定义了一个整型变量`a`并将其地址赋给指针`b`。 - 题2测试了运算符的优先级,其中箭头`->`具有最高优先级,因此A是正确答案。 - 题3考查逻辑运算符的结合性,短路逻辑满足`!(x>0)||(y>0)`的等价性,即只要`x>0`不成立,则整个表达式结果为真,因此A正确。 - 题4涉及`printf`函数的使用,输出的是两个整型变量`a`和`b`的值,所以结果是B,666。 - 题5展示了一个`switch`结构,因为`case 0`和`case 2`都包含对`i`的打印,且没有break跳出,所以输出是C,000122。 - 题6考查绝对值表达式,C选项`!(x-y)<-10||!(y-x)>10`不正确,因为否定的比较操作不会返回`true`或`false`,而是布尔值。 - 题7涉及到数组的元素数量计算,一个11x11的二维数组有11行11列,总共121个元素,所以D是答案。 - 题8考察结构体指针的使用,A、B和C都是合法的结构体成员访问方式,D选项`x->k=2`错误,因为`x`是结构体变量而非指针,不能直接解引用。 2. **变量定义与赋值** - 题9说明了字符数组和字符指针的初始化,B选项`charstr[10];str=”string”`是错误的,字符串应该通过赋值运算符`=`放在数组后面。 - 题10分析了函数作用域和静态变量,题目中提到在`main`函数中可以使用的变量包括全局变量`a`和`b`,以及在`p`函数内部的静态局部变量`y`,因此答案是B,`a,b`。 通过以上题目,我们可以看到C语言的基础语法、运算符优先级、控制结构、数组、指针、结构体以及变量声明和初始化的理解与应用。这些知识点对于理解和掌握C语言至关重要,有助于提升编程技能。