《C语言程序设计 第3版》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:丁亚涛主编;袁琴,李梅,黄晓梅副主编
  • 出 版 社:北京:高等教育出版社
  • 出版年份:2014
  • ISBN:7040404044
  • 页数:334 页
图书介绍:本书在第2版的基础上,根据计算机技术的发展,结合作者多年教学实践与研发经验,并考虑到读者的反馈信息,对各个章节的内容、结构等进行了调整和完善。全书分为12章,主要内容包括:C语言概述、数据类型、运算符和表达式、简单程序设计、选择结构程序设计、循环结构程序设计、数组、函数、指针、结构体、共用体与枚举,位运算,文件,面向对象程序设计及C++、C#、Java简介。本书采用“案例驱动”的编写方式,以程序设计为中心,语法介绍精炼,内容叙述深入浅出、循序渐进,程序案例生动易懂,具有很好的启发性。每章均配备教学课件和精心设计的习题。另外,本书继续配套新版题库及软件测试系统,可供平时练习和课程测试之用。本书既可以作为本专科院校C语言程序设计课程的教材,又可以作为自学者的参考用书,同时还可供各类考试人员复习参考。

第1章 C语言概述 2

1.1 程序设计和C语言 2

1.1.1 程序的概念 2

1.1.2 程序设计的一般过程 2

1.1.3 程序设计的方法 3

1.1.4 C语言的历史和发展 3

1.2 历史上的第一个C语言程序 4

1.3 计算圆柱体底面积和体积 5

1.4 C语言的特点 6

1.5 计算1+2+3+…+100 7

1.6 算法 8

1.6.1 算法概述 8

1.6.2 算法的表示 9

1.7 C语言编程环境 10

1.7.1 Visual C++6.0编程环境 10

1.7.2 Turbo C 2.0编程环境 13

1.7.3 调试程序和错误处理 15

1.8 计算思维 19

1.8.1 关于计算思维 19

1.8.2 C语言和计算思维 20

本章小结 20

习题1 21

第2章 数据类型、运算符和表达式 21

2.1 数据类型 23

2.1.1 数据类型概述 23

2.1.2 整型及整型常量 24

2.1.3 实型及实型常量 25

2.1.4 字符型及字符型常量 27

2.2 标识符、符号常量与变量 29

2.2.1 标识符 29

2.2.2 符号常量 29

2.2.3 变量 30

2.3 运算符与表达式 34

2.3.1 算术运算符与算术表达式 36

2.3.2 算术表达式的书写 39

2.3.3 赋值运算符与赋值表达式 40

2.3.4 逗号运算符与逗号表达式 41

2.4 数据类型转换 42

2.4.1 类型转换概述 42

2.4.2 自动类型转换 44

2.4.3 赋值类型转换 44

2.4.4 强制类型转换 45

2.5 数据的溢出与误差 46

2.5.1 数据的溢出 46

2.5.2 实型数据的误差 48

2.6 一样的′A′,不一样的输出方式 49

2.7 代数式和C语言表达式 49

2.8 时间的换算 50

本章小结 51

习题2 52

第3章 简单程序设计 55

3.1 C语言语句 55

3.2 程序结构 56

3.2.1 程序结构简介 56

3.2.2 顺序结构 58

3.3 赋值语句 58

3.3.1 基本赋值语句 58

3.3.2 复合赋值语句 59

3.4 数据的输入与输出 60

3.4.1 格式化输出函数printf 60

3.4.2 格式化输入函数scanf 63

3.4.3 字符数据的输入与输出 67

3.5 简单的数据交换算法 68

3.6 大小写字母的转换 70

3.7 计算三角形的面积 70

3.8 求一元二次方程的根 71

3.9 相同的++运算,不一样的结果 72

本章小结 73

习题3 74

第4章 选择结构程序设计 79

4.1 红绿灯 79

4.2 关系运算符与关系表达式 80

4.2.1 关系运算符 80

4.2.2 关系表达式 81

4.3 逻辑运算符与逻辑表达式 81

4.3.1 逻辑运算符 81

4.3.2 逻辑表达式 82

4.4 逻辑运算符的短路现象 83

4.5 if语句 84

4.5.1 单分支if语句 84

4.5.2 双分支if语句 84

4.5.3 多分支选择结构 86

4.6 打车费用的计算 87

4.7 if语句的嵌套 88

4.8 闰年的判断 89

4.9 条件运算符和条件表达式 90

4.9.1 条件运算符 90

4.9.2 条件表达式 91

4.1 0 switch语句 92

4.1 1 判断输入的整数是否含有特征数字 95

4.1 2三个数的排序 95

4.1 3分数等级的划分 97

本章小结 99

习题4 99

第5章 循环结构程序设计 106

5.1 一次有趣的投币游戏 106

5.1.1 游戏规则 106

5.1.2 问题的解决 106

5.2 while循环 107

5.3 do-whlle循环 110

5.4 for循环 112

5.5 倒数的求和 114

5.6 循环的嵌套 116

5.7 break语句、continue语句和goto语句 118

5.7.1 break语句 118

5.7.2 continue语句 118

5.7.3 goto语句 119

5.8 阶乘的计算 120

5.9 输出星号组成的图形 120

5.1 0计算100以内的素数之和 123

5.1 1计算Fibonacci数列前20项的和 125

5.1 2循环的阅读和技巧 126

5.1 3 日历的打印 128

本章小结 129

习题5 130

第6章 数 组 139

6.1 数组的基本概念 139

6.2 一维数组 139

6.3 求10个数中的最大值、最小值、平均值 141

6.4 二维数组和多维数组 142

6.5 输入学生成绩,计算每门课程的平均分 144

6.6 字符数组与字符串 145

6.7 逆序输出字符串 146

6.8 字符串函数 147

6.9 查找最大字符串 148

6.10 冒泡排序算法 149

6.11 字符串的连接、插入和删除 152

6.12 转置矩阵 155

6.13 杨辉三角形 156

6.14 日历的打印 158

6.15 *统计汽车违规罚分 159

本章小结 160

习题6 161

第7章 函数 166

7.1 计算(1)+(1+2)+(1+2+3)+(1+2+3+4)+(1+2+3+4+5) 166

7.2 函数的定义和调用 167

7.2.1 函数定义 167

7.2.2 函数调用 168

7.3 参数传递 168

7.4 函数声明 170

7.5 作用域 171

7.6 存储类型 173

7.6.1 自动类型 174

7.6.2 寄存器类型 174

7.6.3 静态类型 174

7.6.4 外部类型 175

7.7 递归计算s=1+2+3+…+100 176

7.8 递归函数 177

7.9 函数参数处理次序的案例 178

7.10 9999符合“哥德巴赫猜想”吗 179

7.11 星号图形的打印 180

7.12 演示数组和函数的关系 181

7.13 科室排班 182

7.14 *汉诺塔游戏 185

本章小结 187

习题7 187

第8章 指 针 193

8.1 借钱的故事 193

8.2 指针的概念 193

8.3 指针变量的定义和初始化 194

8.4 指针运算 195

8.4.1 *运算符和取地址运算符& 195

8.4.2 指针变量的引用 195

8.4.3 指针的算术运算和关系运算 197

8.5 指针与数组 198

8.5.1 指针与字符数组 199

8.5.2 指针与其他类型数组 200

8.5.3 指针与二维数组 200

8.6 指针与函数 204

8.6.1 指针作为函数的参数 204

8.6.2 函数指针 205

8.6.3 返回指针的函数 208

8.7 字符的查找 210

8.8 统计字符的个数 211

8.9 *计算药品使用的频次 215

本章小结 217

习题8 218

第9章 结构体、共用体与枚举 222

9.1 结构体 222

9.1.1 结构体类型的定义 222

9.1.2 结构体变量的定义和初始化 223

9.1.3 结构体变量的引用 226

9.1.4 结构体数组 228

9.1.5 结构体指针 233

9.1.6 结构体与函数 236

9.2 共用体 241

9.2.1 共用体类型的定义 241

9.2.2 共用体变量的说明和引用 242

9.3 枚举类型 247

9.3.1 枚举类型的定义 247

9.3.2 枚举变量的定义和引用 248

9.4 用户定义类型 250

9.5 *动态内存分配与链表 251

9.6 求两个复数之和 256

9.7 已知今天,明天为何? 257

9.8 *统计汽车违规罚分 259

本章小结 261

习题9 262

第10章 位运算 270

10.1 位、字节与编码 270

10.1.1 字节与位 270

10.1.2 原码 270

10.1.3 反码 271

10.1.4 补码 271

10.2 位运算符和位运算 271

10.2.1 按位取反 272

10.2.2 按位与 272

10.2.3 按位或 272

10.2.4 按位异或 273

10.2.5 左位移 273

10.2.6 右位移 273

10.3 程序举例 274

本章小结 276

习题10 276

第11章 文 件 281

11.1 文件概述 281

11.1.1 文件的概念 281

11.1.2 文件的分类 281

11.2 文件操作 283

11.2.1 FILE文件类型指针 283

11.2.2 文件的打开操作 284

11.2.3 文件的关闭操作 285

11.2.4 文件的读写操作 286

11.3 文件的定位 294

11.3.1 置文件位置指针于文件开头位置的函数rewind 294

11.3.2 改变文件位置指针位置的函数fseek 295

11.3.3 取得文件当前位置的函数ftell 296

11.3.4 文件的错误检测 296

11.4 编译预处理 297

11.4.1 宏定义 297

11.4.2 文件包含 299

11.4.3 条件编译 300

11.5 文件中的字母转换 302

11.6 文件的合并 303

11.7 带参数宏的困惑 304

本章小结 304

习题11 305

第12章 面向对象程序设计及C++、C#、Java简介 305

12.1 面向对象程序设计方法 309

12.1.1 概述 309

12.1.2 面向对象程序设计的基本概念 309

12.1.3 面向对象程序设计的特点 310

12.2 C++语言 311

12.2.1 概述 311

12.2.2 C++语言的特点 312

12.2.3 几个简单的C++程序 313

12.2.4 C++程序的基本组成 315

12.2.5 数据的输入和输出 316

12.3 *C#语言 318

12.3.1 概述 318

12.3.2 C#如何与.NET Framework相关 321

本章小结 322

习题12 322

附录A 常用字符与ASCII码对照表 324

附录B Turbo C 2.0常用库函数 325

附录C Turbo C 2.0和Visual C++在编辑C程序时的区别 332

参考文献 333