《C语言入门经典》第五版是目前学习C语言最好的入门书,由霍顿著,杨浩译,清华大学出版社出版。是很多初学者学习C语言的首选,尤其是零基础的朋友。不要错过那些需要它的人。欢迎下载使用。
作者简介伊沃霍顿是世界著名的计算机书籍作家和独立顾问,帮助无数程序员踏入编程殿堂。他在IBM工作多年,并以优异成绩获得数学学士学位。他的资历包括:大多数语言的编程(如汇编语言和多台机器上的高级语言),实时编程,实时闭环工业控制系统的设计与实现。霍顿在面向工程师和科学家的编程教学方面有着丰富的经验(包括C、C、Fortran、PL/1、APL等。).同时,他还是机械、机械加工和电子CAD系统、机械CAM系统和DNC/CNC系统方面的专家。
基础入门C语言是每个程序员都应该掌握的基础语言。C语言是微软使用的C#语言的基础。NET编程。C语言是Objective-C语言的基础,用于iPhone、iPad等苹果设备的编程。C语言是C语言的基础,广泛应用于许多环境(包括GNU项目)。c语言也是Linux操作系统及其众多功能的基础。学习C语言可以为编程生涯提供坚实的基础,也有助于更好地理解更多的现代语言(如Java)。
《C语言入门经典(第5版)》主要介绍C语言,最基础的计算机语言之一。
这本书从最基本的内容开始,一步步讲解一个合格的C语言程序员应该具备的知识和技能。
主要内容
解释C语言的核心特性,比如循环和分支
如何使用指针和指令动态管理内存
如何使用头文件和功能模块代码
程序如何通过键盘、显示器和数据文件读写数据
如何通过预处理命令在编译时优化代码
如何利用结构有效管理输入数据
第1章c语言编程
1.1 C语言
1.2标准库
1.3学习c
1.4创建c程序
1.4.1编辑
1.4.2编译
1.4.3链接
实施
1.5创建第一个程序
1.6编辑第一个程序
1.7处理错误
1.8分析一个简单程序
1.8.1注释
1.8.2预处理说明
1.8.3定义主()功能
1.8.4关键词
1.8.5功能体
1.8.6输出信息
1.8.7参数
控制符号
3个字母的顺序
1.9预处理器
1.10用c语言开发程序
1.10.1了解问题
详细设计
实施
1.10.4测试
1.11功能和模块化编程
1.12常见错误
1.13要点
1.14总结
1.15练习
第二章初步规划
2.1计算机内存
2.2什么是变量
2.3存储整数的变量
2.3.1变量的使用
2.3.2变量初始化
2.4变量和内存
2.4.1有符号整数类型
2.4.2无符号整数类型
2.4.3指定整数常数
2.5使用浮点数
2.6浮点变量
2.6.1使用浮点数完成除法
2.6.2控制输出中的小数位数
2.6.3控制输出的场宽度
2.7更复杂的表达式
2.8定义命名常数
2.8.1限值
运营商的规模
2.9选择正确的类型
2.10强制类型转换
2.10.1自动转换类型
2.10.2隐式类型转换规则
赋值语句中的隐式类型转换
2.11再谈数字数据类型
2.11.1字符类型
2.11.2字符输入和输出
枚举
存储布尔值的变量
2.12 op=赋值操作的形式
2.13数学函数
2.14设计程序
2.14.1问题
2.14.2分析
2.14.3方案
2.15总结
2.16实践
第三章附条件判决
3.1判断过程
3.1.1算术比较
基本if语句
3.1.3扩展if语句:if-else
3.1.4在if语句中使用代码块
3.1.5嵌套if语句
3.1.6测试字符
逻辑运算符
3.1.8条件运算符
3.1.9经营者的优先权
3.2选择题
3.2.1使用else-if语句进行多项选择
3.2.2开关说明
3.2.3 goto语句
3.3位运算符
3.3.1按位运算符op=的用法
3.3.2使用位运算符
3.4设计程序
3.4.1问题
3.4.2分析
3.4.3解决方案
3.5总结
3.6实践
第四章流通
4.1循环
4.2递增和递减运算符
4.3 for循环
4.4 for循环的一般语法
4.5再谈增量和减量运算符
4.5.1增量运算符
4.5.2增量运算符的前形式和后形式
减少运算符
4.6对强制循环的再讨论
修改for循环变量
4.6.2对于无参数的回路
4.6.3循环中的中断语句
4.6.4使用for循环来限制输入
4.6.5生成伪随机整数
4.6.6我们再来谈谈循环控制选项
4.6.7浮点型循环控制变量
4.7 while循环
4.8嵌套循环
4.9嵌套循环和goto语句
4.10边做边循环
4.11继续陈述
4.12设计程序
4.12.1问题
4.12.2分析
4.12.3方案
4.13总结
4.14练习
第五章阵列
5.1阵列简介
5.1.1无数组程序
5.1.2什么是数组
5.1.3使用数组
5.2寻址操作员
5.3阵列和地址
5.4阵列的初始化
5.5确定阵列的大小
5.6多维数组
5.7多维数组的初始化
5.8可变长度阵列
5.9设计程序
5.9.1问题
5.9.2分析
5.9.3解决方案
5.10总结
5.11练习
第六章字符串和文本的应用
6.1什么是字符串
6.2存储字符串的变量
6.3串操作
6.3.1检查C11的支架
6.3.2确定字符串长度
6.3.3复制字符串
6.3.4连接字符串
6.3.5比较字符串
6.3.6搜索字符串
6.3.7组合管柱
6.3.8将换行符读入字符串
6.4分析和转换字符串
6.4.1转换字符的大写和小写形式
6.4.2将字符串转换为数值
6.5设计程序
6.5.1问题
6.5.2分析
6.5.3解决方案
6.6总结
6.7练习
第七章指针
7.1指针探讨
7.1.1声明指针
7.1.2通过指针访问值
7.1.3使用指针
7.1.4常量指针
常量指针
指针的命名
7.2数组和指针
7.3多维数组
7.3.1多维数组和指针
7.3.2访问数组元素
7.4内存的使用
7.4.1动态内存分配:malloc()函数
7.4.2释放动态分配的内存
7.4.3使用calloc()函数分配内存
7.4.4扩展动态分配的内存
7.5使用指针处理字符串
7.5.1使用指针数组
7.5.2指针和数组标记
7.6设计程序
7.6.1问题
7.6.2分析
7.6.3方案
7.7总结
7.8练习
第八章编程结构
8.1程序的结构
8.1.1变量的范围和寿命
8.1.2变量的范围和功能
8.2功能
定义功能
8.2.2申报表
8.3按价值转移机制
8.4功能原型
8.5指针用作参数和返回值
8.5.1恒定参数
8.5.2返回指针的风险
8.6总结
8.7练习
第九章功能再探索
9.1功能指针
9.1.1声明函数指针
9.1.2通过函数指针调用函数
9.1.3函数指针数组
9.1.4作为参数的函数指针
9.2函数中的变量
9.2.1静态变量:跟踪函数内部
9.2.2函数之间共享变量
9.3调用自己的函数:递归
9.4变参数函数
9.4.1复制va_list
9.4.2变长自变量列表的基本规则
9.5主要()功能
9.6结束程序
9.6.1中止()功能
9.6.2 exit()和atexit()函数
9 . 6 . 3 _退出()功能
9.6.4快速退出()和at快速退出()功能
9.7提高性能
9.7.1内联声明函数
9.7.2使用限制关键字
9.7.3 _Noreturn函数限定符
9.8设计程序
9.8.1问题
9.8.2分析
9.8.3解决方案
9.9总结
9.10练习
第十章基本输入输出操作
10.1输入和输出流程
10.2标准流程
10.3键盘输入
10.3.1格式化键盘输入
10.3.2输入格式控制字符串
10.3.3在格式字符串中输入字符
10.3.4输入浮点数的各种变化
10.3.5读取十六进制和八进制值
10.3.6使用scanf_s()读取字符
10.3.7从键盘输入字符串
10.3.8单一字符的键盘输入
10.4屏幕输出
10.4.1使用printf_s()的打印格式
10.4.2转义序列
10.4.3整数输出
10.4.4输出浮点数
10.4.5字符输出
10.5其他输出功能
屏幕的非打印格式
10.5.2数组打印格式
10.5.3数组格式输入
10.6总结
练习
第11章结构化数据
11.1数据结构:使用结构
11.1.1定义结构类型和结构变量
11.1.2拜访结构成员
未命名的结构
11.1.4结构阵列
11.1.5表达式中的结构构件
11.1.6结构指针
11.1.7为结构动态分配内存
11.2结构构件的重新探索
11.2.1将一个结构视为另一个结构的成员
11.2.2在结构中声明结构
11.2.3使用结构指针作为结构成员
11.2.4双链表
结构中的11.2.5位字段
11.3结构和功能
11.3.1作为函数自变量的结构
11.3.2结构指针作为函数参数
11.3.3作为函数的返回值结构
11.3.4二叉树
11.4共享内存
11.5设计程序
11.5.1问题
11.5.2分析
11.5.3方案
11.6总结
练习
第十二章文件处理
12.1文件的概念
12.1.1文件的位置
12.1.2文件流程
12.2文件访问
12.2.1打开文件
12.2.2缓存文件操作
12.2.3文件重命名
12.2.4关闭文件
12.2.5删除文件
12.3编写文本文件
12.4阅读文本文件
12.5在文本文件中读写字符串
12.6格式化文件的输入和输出
12.6.1格式文件输出
12.6.2格式文件输入
12.7错误处理
12.8重新探索文本文件的运行模式
12.9 freopen_s()函数
12.10二进制文件的输入和输出
12.10.1以二进制模式打开文件
12.10.2编写二进制文件
12.10.3读取二进制文件
12.11文件移动
12.11.1文件定位操作
12.11.2找出我们在文件中的位置
12.11.3设置文件中的位置
12.12使用临时文件
创建一个临时文件
12.12.2创建唯一文件名
12.13更新二进制文件
12.13.1修改文件的内容
12.13.2通过键盘输入创建记录
将记录写入文件
12.13.4从文件读取记录
12.13.5编写文件
列出文件的内容
12.13.7更新现有文件内容
12.14文件打开方式总结
12.15设计程序
12.15.1问题
12.15.2分析
12.15.3方案
12.16摘要
练习
第13章支持功能
13.1预处理
13.1.1在程序中包含头文件
13.1.2自己定义头文件
13.1.3管理多个源文件
13.1.4外部变量
13.1.5静态功能
13.1.6替换程序源代码
13.2宏
13.2.1看起来像函数的宏
13.2.2字符串作为宏参数
13.2.3在宏观扩展中合并两个参数
13.3多行预处理器指令
13.3.1预处理器逻辑指令
13.3.2条件编译
测试多个条件
13.3.4未定义的标识符
13.3.5测试标识符指定值的说明
13.3.6多重选择
13.3.7标准预处理宏
13.4调试方法
13.4.1集成调试器
调试阶段的预处理器
13.4.3断言
13.5日期和时间功能
13.5.1获取时间值
13.5.2收购日期
13.5.3确定一周中的哪一天
13.6总结
13.7练习
第十四章高级专题
14.1使用国际字符集
理解Unicode
14.1.2设置区域
14.1.3宽字符类型wchar_t
14.1.4宽管柱操作
14.1.5宽字符文件流操作
14.1.6存储固定大小类型的Unicode字符
14.2可移植的特殊整数类型
14.2.1固定宽度整数
14.2.2最小宽度的整数
14.2.3最大宽度整数
14.3复数类型
14.3.1复数
14.3.2多个类型和操作
14.4用线程编程
创建一个线程
退出螺纹
14.4.3将一个螺纹连接到另一个螺纹上。
14.4.4暂停螺纹
14.4.5管理线程数据访问
14.5总结
附录一计算机数学知识
附录二ASCII字符代码定义
附录C C语言中的保留词
附录D输入输出格式描述符
附录E标准图书馆