书籍介绍
《C语言程序设计(第3版)》是一本兼具趣味性和实用性的C程序设计教材。全书由13章组成,内容包括:为什么要学C语言,C数据类型、简单的算术运算符和表达式,键盘输入和屏幕输出,选择控制结构,循环控制结构,函数,数组,指针,字符串,指针和数组,结构体与共用体,文件操作。
《C语言程序设计(第3版)》以应用为背景,面向编程实践和问题求解能力的训练,从实际问题出发,在案例的不断深化中逐步引出知识点,形成“程序设计方法由自底向上到自顶向下”和“数据结构由简单到复杂”的两条逻辑清晰的主线。案例内容紧密结合实践,举一反三,融会贯通,尤其侧重错误案例的分析和讲解,在任务驱动下,由浅入深、启发引导读者循序渐进地编写规模逐渐加大的程序,让读者在不知不觉中逐步加深对C语言程序设计方法的了解和掌握。《C语言程序设计(第3版)》配有多媒体课件、例题和习题源代码以及基于C/S结构的编程题考试自动评分系统等教学资源,免费向任课教师提供。
《C语言程序设计(第3版)》适合作为高等学校各专业的C语言程序设计课程教材,也可作为从事计算机相关工作的科技人员、计算机爱好者及各类自学人员参考。
AI导读
核心看点
- 基于C11/C18标准,强调软件工程与现代编程方法
- 覆盖C99至C18新特性,含标准库与大型程序编写
- 每章设问与答环节,直击static等易错痛点与技巧
适合谁读
- 具备一定基础,欲深入理解C语言标准与底层机制者
- 从事嵌入式、驱动开发及操作系统研发的工程师
- 希望系统复习C语言,提升代码规范与工程能力的学生
读前提醒
- 非零基础友好,初学者建议先读C Primer Plus入门
- 部分章节翻译略显生硬,建议结合英文原版对照阅读
- 内容详实且深,自学难度较大,需耐心配合习题练习
读者共识
- 内容全面且现代,是难得的真正讲述C语言的教材
- 翻译质量参差,部分读者认为不如英文原版通顺
- 适合进阶与复习,对编译原理及底层知识讲解透彻
本导读基于书籍简介、目录、原文摘录、短评和书评生成,不等同于全文精读。
精彩摘录
- "GCC是什么的简称? GCC最初是GNU C Compiler的简称。现在指GNU Compiler Collection 如果main函数末尾没有return语句会产生什么后果? return语句不是必需达到;如果没有return语句,程序一样会终止。在C89中,返回给操作系统的值是未定义的。在C99中,如果main函数声明中的返回类型是int,程序会向操作系统返回0;否则程序会返回一个不确定的值。 依据C标准,编译器必须用一个空格字符串替换每条注释语句。 a/**/b = 0; 会被编译器理解成: a b = 0;"
- "int count_spaces(const char *s) { int count = 0; for (; *s != '\0'; s++) if (*s == ' ') count++; return count; }"
- "struct node{ int node; /* data stored in the node */ struct node *next; /* pointer to the next node */ };"
- "——在探索难以实现的问题时,问题本身的简单性只会使情况更糟。"
- "——请别搞错:计算机处理的是数而不是符号。我们用对行为的算术化程度来衡量我们的理解力(和控制力)。"
- "C99中以LL / ll结尾的整数常量通常是long long int类型; 在ll / LL前面或后面加上u/U表无符号;"
- "有符号整型溢出时,程序行为未定义;无符号则有定义。"
- "读写符号整数时,使用u/o/x: u表无符号十进制整数; o表八进制形式; x表十六进制形式; 读写短整数时,在d/o/u/x前加上h; 读写长整数时,在d/o/u/x前加上l; (C99)读写长长整数时,在d/o/u/x前加上ll;"
作者简介
作者简介
K. N. 金(K. N. King)
世界知名的计算机程序设计教育家。他拥有耶鲁大学计算机科学硕士学位,加州大学伯克利分校计算机科学博士学位,曾任教于佐治亚理工学院和佐治亚州立大学。除本书外,他还撰写了广受欢迎的著作Modula-2: A Complete Guide和Java Programming: From the Beginning。
译者简介
吕秀锋
曾任教于北京理工大学软件学院,讲授过多门计算机课程,包括“计算机基础(双语)”“C语言程序设计(双语)”“数据结构”“程序设计开发与实践”。
黄倩
河海大学计算机科学与技术系主任,兼任中国人工智能学会深度学习专委会委员、中国计算机学会多媒体技术专委会委员。博士毕业于中国科学院计算技术研究所,译有《编程珠玑(第2版)》等。