清华大学出版社
学C语言的99%都用他的书
以下在网络上看到对他的书的评价
按∶
谭浩强
教授编写的
《C程序设计
》一书受到广泛的欢迎和高度评价。下面刊登几所大学讲授C语言
课程
的老师对《C程序设计》一书的评价意见。
清华大学计算机与信息管理中心
承担着清华大学非
计算机专业
的“计算机软件技术基础”课,自1994年起选用清华大学出版的谭浩强教授编写的《C程序设计》一书作为本课程教材,取得了很好的教学效果,深受师生们的欢迎,现正使用第二版作为
教材
。此书的特点及对教学的
促进作用
主要表现在以下几方面:
1.内容全面,实用性强
此书涵盖了程序设计
基础知识
及C语言程序设计的全部内容,并介绍了大量常用
算法
。通过学习此教材,初学程序设计的学生可以达到熟练运用C语言进行小规模应用开发的能力。
2.讲解透彻,深入浅出
此书对
概念
讲解透彻,使初学
计算机程序设计
的学生不仅学习了一种
高级语言
,而且能够对相关基础知识有准确深入的理解,例如在介绍
变量
的存储类型时、介绍指针时都对
计算机
的
存储管理
做了清楚的论述,使读者知其然也知期所以然。广大非计算机专业的学生学习
计算机课程
的学时很少,没有足够的
时间系统
地学习计算机专业基础知识。因此像这样将必要的基础知识融会贯通到程序设计课程中,对学生的
知识结构
建设以及今后的深造和提高都大有裨益。
3.通俗易懂,易于自学
此书的一个突出优点就是,语言优美、举例生动、
浅显易懂
。学生在学习C语言之前,普遍有些畏难情绪,因为听说C语言比较难学。的确C语言最初是面向专业
开发人员
的。但是读了
这本书
之后,学生们不再惧怕C语言。很多学生说,读这本书不仅
学会
了C语言,而且读的
过程
本身就是一种享受,不像有些专业书籍,堆砌大量技术
名词
,艰涩难懂。由于这本书易于自学,给我们的教学工作带来很大帮助,使我们可以达到精讲多练,逐步实现教师指导下的学生自主式
学习模式
。
4.结构清晰,循序渐进
由于本书结构清晰,
知识点
明确,循序渐进的内容组织方式非常符合
初学者
的认知
规律
,因此给教师组织
课堂教学
提供了很好的指导。我们按照这本书的内容结构组织教学,取得了学生和
教务处
的一致好评。
5.习题丰富,利于复习
计算机程序设计是一门实践性很强的课程,因此仅仅通过阅读教科书或听课是不可能掌握的,学习程序设计的最重要环节就是实践。本书每章都附有大量习题,并且有配套的习题解答,非常有利于学生复习巩固课上所学的知识。也便于教师设计
实验课
的
教学内容
。
最好的就是谭浩强的《C语言程序设计》。整体来说,这本书是比较通俗易懂的,基本上讲清楚了语法,也适合0基础的学生读懂。但是书中的代码写的较为一般,不管是命名,还是代码的风格(缩进,空行,换行等)处理的很差,如果初学者模仿着去写代码,容易养成坏的编程习惯。
书中介绍的开发环境也较为落后,之前还在使用VC6.0(98年的软件),这个环境在真实的开发环境中很少使用,所以课程跟不上技术的迭代,和实际的企业开发环境脱节严重。
#include <stdio.h>#define ROW 5
#define COL 5
int main()
{
int array[ROW][COL]
int i, j, sum = 0, count = 0
float average = 0.0
// 初始化二维数组
for (i = 0i <ROWi++)
{
for (j = 0j <COLj++)
{
array[i][j] = i + j
}
}
// 计算二维数组的和
for (i = 0i <ROWi++)
{
for (j = 0j <COLj++)
{
sum += array[i][j]
}
}
// 计算周围元素的平均值
for (i = 0i <ROWi++)
{
for (j = 0j <COLj++)
{
if (i >0 &&j >0 &&i <ROW - 1 &&j <COL - 1)
{
count++
average += (array[i-1][j-1] + array[i-1][j] + array[i-1][j+1] + array[i][j-1] + array[i][j+1] + array[i+1][j-1] + array[i+1][j] + array[i+1][j+1]) / 8.0
}
}
}
// 打印结果
printf("The sum of the array is %d\n", sum)
printf("The average of the surrounding elements is %.2f\n", average / count)
return 0
}
该代码使用两个嵌套循环遍历整个二维数组,第一个循环用于计算数组的和,第二个循环用于计算周围元素的平均值。除了数组的边界元素外,所有元素的周围元素都将被计算入平均值。
请注意,代码中使用了 ROW 和 COL 宏定义,这些定义用于指定数组的行数和列数,因此,如果您希望使用其他数组大小,只需修改这些定义即可。
最后,代码使用 printf 函数打印结果,并使用了格式字符串(.2f)以保留两位小数。