21世纪高等教育计算机规划教材

C语言程序设计(第3版)

分享 推荐 0 收藏 1 阅读 1.7K
安俊秀 (主编) 于 , 华 , 董妍汝 , 闫俊伢 (副主编) 相万让 张永奎 (主审) 978-7-115-36278-0

关于本书的内容有任何问题,请联系 张斌

1.以实际案例为主线
2.引入软件工程的思想,介绍软件开发方法
¥45.00 ¥38.25 (8.5 折)
教学资源仅供教师教学使用,转载或另作他用版权方有权追究法律责任。

内容摘要

  本书严格遵循C语言标准,全面、系统、深入浅出地阐述了C语言的基本概念、语法和语义,以及用C语言进行程序设计的方法和技术。全书共三篇,第一篇为“C语言程序设计基础知识”,第二篇为“C语言高级编程技术”,第三篇为“C语言综合应用与实践”。第一篇强调对基本概念的理解和掌握,主要讲解C语言的语法规则、C语言的基本控制结构、数组、函数等知识;第二篇强调在理解和掌握的基础上运用高级编程技术的方法编写程序的能力,该篇主要介绍了指针、结构体、共用体、文件等相关知识;第三篇重在培养学生综合编程能力及程序编码的规范性,主要介绍了学生成绩管理系统的设计和开发。
  本书内容丰富,可读性强,内容的编排尽量符合初学者的要求,在实例的选择上从易到难,并且能够解决一些实际问题。配套的实验指导书《C语言趣味实验》可以强化学生熟练和巩固所学知识。
  本书可作为大学本科计算机和相关专业的“C程序设计”教材,也适合作为C语言初学者的入门读物和自学教程。

目录

目 录

第 一篇 C语言程序设计基础知识

第 1章 C语言程序设计预备知识 1
1.1 计算机系统组成及工作原理简介 1
1.1.1 硬件系统的组成及其工作原理 1
1.1.2 软件系统的组成 3
1.2 进位计数制及其转换 3
1.2.1 计算机中数制的表示 3
1.2.2 非十进制数和十进制数的转换 4
1.2.3 二进制数、八进制数和十六进制数的转换 5
1.3 机器数的表示形式及其表示范围 6
1.3.1 真值与机器数 6
1.3.2 数的原码、反码和补码 7
1.3.3 无符号整数与带符号整数 8
1.3.4 字符的表示法 8
习题1 9

第 2章 C语言概述 10
2.1 C语言的发展及特点 10
2.1.1 程序设计语言的发展 10
2.1.2 C语言的起源与发展 11
2.1.3 C语言的特点 12
2.2 C语言应用领域概述 13
2.2.1 C语言在系统开发中的应用 13
2.2.2 C语言在嵌入式系统开发中的应用 13
2.2.3 C语言在商业应用软件开发中的应用 13
2.2.4 C语言在硬件驱动开发、游戏设计中的应用 14
2.3 C程序的格式 14
2.3.1 简单的C程序实例 14
2.3.2 C程序的结构特点 16
2.4 C程序的开发环境 18
2.4.1 用计算机解决实际问题的步骤 18
2.4.2 运行C程序的一般步骤 19
2.5 Visual C++ 6.0集成环境介绍 20
2.5.1 Visual C++ 6.0界面简介 20
2.5.2 Visual C++ 6.0环境设置 21
2.5.3 在Visual C++ 6.0中编辑和运行C程序 23
习题2 25

第3章 基本数据类型、运算符与表达式 27
3.1 常量与变量 27
3.1.1 C语言的基本元素 27
3.1.2 数据和数据类型 28
3.1.3 常量 29
3.1.4 变量 30
3.2 基本数据类型 31
3.2.1 整型数据 31
3.2.2 实型数据 34
3.2.3 字符型数据 35
3.2.4 不同类型数据之间的混合运算 37
3.3 三大运算符及其表达式 38
3.3.1 算术运算符及算术表达式 38
3.3.2 关系运算符及关系表达式 39
3.3.3 逻辑运算符及逻辑表达式 40
3.4 其他运算符及其表达式 41
3.4.1 赋值运算符及赋值表达式 41
3.4.2 自增自减运算符及其表达式 43
3.4.3 条件、强制类型转换运算符及其表达式 43
3.4.4 求字节、逗号运算符及其表达式 45
3.4.5 取地址运算符 45
3.4.6 位运算符及应用 45
3.5 运算符的优先级与结合性 48
习题3 50

第4章 输入/输出函数的使用 53
4.1 按格式输出函数printf()的使用 53
4.2 按格式输入函数scanf()的使用 56
4.3 字符输入/输出函数的使用 58
习题4 60

第5章 算法与结构化程序设计 63
5.1 算法的概念 63
5.1.1 程序设计的概念 63
5.1.2 程序的灵魂—算法 64
5.1.3 算法的特征及优劣 64
5.2 算法的描述方法 65
5.2.1 用自然语言表示算法 65
5.2.2 用传统流程图描述算法 66
5.2.3 用N-S图表示算法 68
5.2.4 用伪代码表示算法 70
5.3 结构化程序设计 71
5.3.1 三大基本结构 71
5.3.2 实现结构化程序设计的方法 72
5.3.3 算法的合理性与优化 75
习题5 78

第6章 C语言程序的基本控制结构 79
6.1 C语句分类 79
6.2 顺序结构程序设计举例 81
6.3 选择结构程序设计及其语句 83
6.3.1 选择结构程序设计思想 83
6.3.2 if语句的应用 84
6.3.3 switch开关语句的应用 90
6.4 选择结构程序举例 92
6.5 循环结构程序设计及其语句 95
6.5.1 while循环语句的应用 95
6.5.2 do…while循环语句的应用 96
6.5.3 for循环语句的应用 97
6.5.4 循环的嵌套 101
6.5.5 几种循环的比较 102
6.6 辅助控制语句及循环结构程序举例 103
6.6.1 辅助控制语句的应用 103
6.6.2 循环结构程序举例 106
6.7 程序的调试 107
6.7.1 编译出错信息理解与调试 107
6.7.2 Visual C++ 6.0中的程序调试 110
习题6 111

第7章 数组 115
7.1 问题的提出 115
7.2 一维数组 116
7.2.1 一维数组的定义 116
7.2.2 一维数组的引用 118
7.2.3 一维数组的初始化 118
7.2.4 一维数组的应用 120
7.3 二维数组和多维数组 125
7.3.1 二维数组的定义 126
7.3.2 二维数组的引用 127
7.3.3 二维数组的初始化 127
7.3.4 二维数组的应用 128
7.3.5 多维数组的定义和引用 133
7.4 字符数组和字符串 133
7.4.1 字符数组的定义、初始化和引用 133
7.4.2 字符数组的输入/输出 136
7.4.3 常用字符串处理函数 137
7.4.4 字符数组的应用 142
习题7 145

第8章 函数和变量的作用域 149
8.1 函数概述 149
8.1.1 模块化程序设计方法 149
8.1.2 C一模块化程序设计语言 150
8.1.3 函数的分类 151
8.2 函数的定义与调用 152
8.2.1 函数的定义 152
8.2.2 函数的参数和返回值 154
8.2.3 函数声明 156
8.2.4 函数的调用和参数传递 157
8.3 函数的嵌套调用和递归调用 160
8.3.1 函数的嵌套调用 160
8.3.2 函数的递归调用 162
8.4 数组作为函数的参数 164
8.4.1 数组元素作函数实参 164
8.4.2 一维数组名作函数实参 165
8.4.3 二维数组名作函数实参 166
8.5 变量的作用域与生存期 167
8.5.1 局部变量及其存储类型 168
8.5.2 全局变量及其存储类型 173
8.6 内部函数和外部函数 177
8.6.1 内部函数 177
8.6.2 外部函数 177
8.6.3 如何运行一个多文件的程序 178
8.7 程序综合示例 180
习题8 182

第 二篇 C语言高编技术

第9章 指针的应用 185
9.1 指针概述 185
9.1.1 变量与地址 185
9.1.2 指针与指针变量 185
9.1.3 &与*运算符 186
9.1.4 直接访问与间接访问 187
9.2 指针变量 187
9.2.1 指针变量的定义、初始化及引用 187
9.2.2 零指针与空类型指针 189
9.2.3 指针变量作为函数参数 190
9.3 指针与数组 191
9.3.1 指向数组元素的指针变量的定义与赋值 191
9.3.2 数组元素的表示方法 192
9.3.3 指针变量的运算 194
9.3.4 指针与二维数组 195
9.3.5 指针数组 198
9.4 指针与字符串 200
9.4.1 字符串的表示形式及其相关操作 200
9.4.2 字符指针作函数参数 203
9.5 函数指针与指针函数 203
9.5.1 函数指针及指向函数的指针变量 203
9.5.2 指针函数 204
9.5.3 指向指针的指针 205
9.6 带参数的main函数 207
9.7 指针的应用举例 208
习题9 210

第 10章 结构体、共用体及枚举类型的应用 214
10.1 结构体的应用 214
10.1.1 结构体类型的定义 215
10.1.2 结构体变量的声明 216
10.1.3 结构体变量的初始化 218
10.1.4 结构体变量的引用 218
10.2 结构体数组 219
10.3 指向结构体的指针 221
10.4 结构体与函数 223
10.4.1 函数的形参与实参是结构体 223
10.4.2 函数的返回值类型是结构体 224
10.5 共用体的应用 227
10.5.1 共用体类型的定义 228
10.5.2 共用体变量的声明和引用 228
10.5.3 共用体变量程序举例 230
10.6 单链表的应用 231
10.6.1 链表概述 231
10.6.2 动态分配内存库函数 233
10.6.3 单链表的基本操作 233
10.6.4 单链表的应用举例 238
10.7 枚举类型 241
10.8 类型定义 243
习题10 244

第 11章 文件 248
11.1 C文件概述及文件类型指针 248
11.1.1 C文件概述 248
11.1.2 文件的分类 248
11.1.3 文件类型指针 249
11.2 文件的操作 249
11.2.1 文件的打开和关闭操作 249
11.2.2 文件读写操作 251
11.2.3 文件的定位 259
11.2.4 文件出错的检测 261
11.3 库文件 262
11.4 文件操作应用举例 263
习题11 267

第 12章 编译预处理 269
12.1 宏定义 269
12.2 “文件包含”处理 274
12.3 条件编译 276
12.4 程序示例 279
习题12 279

第三篇 C语言综合应用与实践

第 13章 程序编码规范 282
13.1 标识符命名规范 282
13.2 代码编写格式 284
13.2.1 清晰的表达式 285
13.2.2 语句的规范性 286
13.2.3 缩进的书写格式 288
13.2.4 一致性和习惯用法 290
13.2.5 程序描述的层次 291
13.3 文档注释 292
13.3.1 注释 292
13.3.2 注释的书写格式 293
13.3.3 注释的分类及使用 293
习题13 295

第 14章 学生成绩管理系统 296
14.1 软件设计过程 296
14.1.1 需求分析 296
14.1.2 总体设计 297
14.1.3 详细设计 297
14.1.4 测试与调试 297
14.2 学生成绩管理系统V1 297
14.2.1 需求分析 297
14.2.2 总体设计 297
14.2.3 详细设计 299
14.3 学生成绩管理系统V2 310
14.3.1 功能分析 310
14.3.2 总体设计 311
14.3.3 详细设计 313

附录1 常用字符与ASCⅡ代码对照表 319
附录2 Visual C++ 6.0常见错误信息表 320
附录3 Visual C++常用库函数一览表 322

参考文献 327

读者评论

赶紧抢沙发哦!

我要评论

同系列书

  • Java Web程序设计教程

    陈沛强 谷灵康 金京犬

    本书作为Java Web程序设计的大学教程,对Java EE编程技术进行了系统全面的介绍。全书共分14章。首先...

    ¥48.00
  • C++程序设计——思想与方法 慕课版(第3版)

    翁惠玉 俞勇

    本书以C++语言为环境,重点讲授程序设计的思想和方法,包括过程化的程序设计和面向对象的程序设计,且本书非常强调...

    ¥49.80
  • 网页设计与制作(附微课视频 第2版)

    雷伟军

    本书依据教育部高等学校计算机基础课程教学指导委员会提出的《关于进一步加强高校计算机基础教学的意见》中有关“网页...

    ¥45.00
  • 数据结构与算法分析(C++语言版)

    张琨 张宏 朱保平

    本书共分10章,主要包括第1章绪论,第2章线性表,第3章栈和队列,第4章串,第5章数组和广义表,第6章 树和二...

    ¥45.00
  • 多媒体技术及应用

    李小英 谷长龙 段伟 蔡益红

    本书全面系统地介绍了多媒体技术的基础知识与应用软件的使用。全书共5章。第1章多媒体技术概论讲述了多媒体技术的基...

    ¥39.00

相关图书

人邮微信
本地服务
教师服务
教师服务
读者服务
读者服务
返回顶部
返回顶部