出版社:清华大学出版社
年代:2011
定价:30.0
本书以C程序设计语言为工具,以程序设计为主线,以编程应用为驱动,通过案例重点讲解程序设计的思想和方法。
第1章 绪论1
1.1 程序与程序设计1
1.1.1 程序的概念1
1.1.2 程序设计的概念2
1.1.3 程序设计的基本认知3
1.2 程序设计语言8
1.2.1 机器语言8
1.2.2 汇编语言8
1.2.3 高级语言9
1.3 C程序设计语言9
1.3.1 C语言的产生与发展9
1.3.2 C语言的特点10
1.4 算法11
1.4.1 算法的定义11
1.4.2 算法的特性11
1.4.3 算法的描述11
1.4.4 编写程序的方法12
1.5 C语言程序的执行过程13
1.6 学生成绩管理系统13
1.6.1 需求描述13
1.6.2 问题分析14
1.6.3 工程计划14
1.6.4 目标演示15
习题16
第2章 简单顺序程序设计17
2.1 计算一个学生的成绩总分和平均分17◆程序设计基础--从问题到C语言程序目 录 2.1.1 问题描述与抽象17
2.1.2 映射编码18
2.1.3 编码分析与思考19
2.2 C语言的词法记号19
2.3 数据类型、常量和变量21
2.3.1 数据类型21
2.3.2 常量22
2.3.3 变量24
2.4 运算符与表达式25
2.4.1 赋值运算符与赋值表达式25
2.4.2 算术运算符与算术表达式26
2.4.3 复合赋值运算符27
2.4.4 条件运算符与条件表达式27
2.4.5 逗号运算符与逗号表达式27
2.5 输入函数scanf()和输出函数printf()28
2.5.1 格式化输入函数scanf()28
2.5.2 格式化输出函数printf()29
习题29
第3章 分支结构程序设计31
3.1 学生成绩等级划分31
3.1.1 问题描述与抽象31
3.1.2 映射编码32
3.1.3 编码分析与思考33
3.2 关系运算符、逻辑运算符与其表达式33
3.2.1 关系运算符与关系表达式33
3.2.2 逻辑运算符与逻辑表达式34
3.3 分支结构语句35
3.3.1 if语句35
3.3.2 switch…case语句37
习题39
第4章 循环结构程序设计40
4.1 计算一批学生的成绩总分和平均分40
4.1.1 问题描述与抽象40
4.1.2 映射编码41
4.1.3 编码分析与思考42
4.2 循环结构语句42
4.2.1 for语句42
4.2.2 while语句43
4.2.3 do-while语句44
4.3 循环控制44
4.3.1 break语句44
4.3.2 continue语句45
4.3.3 goto语句45
习题46
第5章 数组47
5.1 学生成绩输入输出处理47
5.1.1 问题描述与抽象47
5.1.2 映射编码49
5.1.3 编码分析与思考49
5.2 一维数组50
5.2.1 一维数组的定义50
5.2.2 一维数组元素的引用50
5.2.3 一维数组的初始化51
5.2.4 一维数组应用(排序、查找、插入、统计和计算)52
5.3 二维数组59
5.3.1 二维数组与多维数组的定义59
5.3.2 二维数组元素的引用60
5.3.3 二维数组的初始化60
5.3.4 二维数组应用(求矩阵中的最大值位置)61
5.4 字符数组与字符串63
5.4.1 字符数组的定义与引用63
5.4.2 字符数组的初始化64
5.4.3 字符串64
5.4.4 字符串操作的库函数66
习题71
第6章 函数73
6.1 显示学生成绩管理系统功能菜单73
6.1.1 问题描述与抽象73
6.1.2 映射编码76
6.1.3 编码分析与思考78
6.2 函数的基本用法78
6.2.1 函数的定义78
6.2.2 函数的调用79
6.2.3 函数参数的传递82
6.2.4 函数的返回86
6.2.5 函数的嵌套调用86
6.2.6 函数的递归调用91
6.3 变量的作用域96
6.3.1 变量的存储类型96
6.3.2 全局变量100
6.3.3 变量的生命周期和存储类型小结102
6.4 函数在学生成绩管理系统中的应用103
习题111
第7章 指针113
7.1 学生成绩排序113
7.1.1 问题描述与抽象113
7.1.2 映射编码115
7.1.3 编码分析与思考116
7.2 指针变量116
7.2.1 指针的基本概念116
7.2.2 指针变量的定义117
7.2.3 指针变量的初始化118
7.2.4 指针运算符118
7.2.5 指针变量运算120
7.3 指针与一维数组121
7.3.1 指向一维数组元素的指针121
7.3.2 通过指针变量引用一维数组元素122
7.3.3 指向字符串的指针124
7.3.4 指针作为函数的参数128
7.4 指针与二维数组131
7.4.1 二维数组元素的地址131
7.4.2 通过指针变量引用二维数组元素132
7.5 指向函数的指针和返回指针的函数135
7.5.1 用函数指针变量调用函数135
7.5.2 返回指针的函数136
习题137
第8章 自定义类型与预编译处理138
8.1 构建一个学生成绩单138
8.1.1 问题描述与抽象138
8.1.2 映射编码140
8.1.3 编码分析与思考140
8.2 结构体141
8.2.1 结构体的定义和变量的说明141
8.2.2 结构体成员的引用142
8.2.3 结构体数组142
8.2.4 结构体指针146
8.2.5 用结构体指针处理简单链表149
8.3 共用体154
8.3.1 共用体的定义与变量的说明154
8.3.2 共用体成员的引用154
8.4 枚举155
8.4.1 枚举类型的定义和变量的说明155
8.4.2 枚举变量的赋值和使用155
8.5 预处理命令156
8.5.1 概述156
8.5.2 宏定义156
8.5.3 文件包含159
8.5.4 条件编译159
习题160
第9章 文件162
9.1 学生成绩数据写入到指定文件162
9.1.1 问题描述与抽象162
9.1.2 映射编码163
9.1.3 编码分析与思考164
9.2 文件的基本概念164
9.2.1 文本文件和二进制文件164
9.2.2 顺序文件和随机文件165
9.2.3 文件操作的常用函数165
习题178
附录A 集成开发环境TC 2.0介绍182
A.1 TurboC 2.0简介182
A.2 Turbo C 2.0的配置文件188
A.3 Turbo C 2.0的使用188
A.4 Turbo C程序调试技术189
附录B 常用字符ASCII码对照表197
附录C 常用运算符的优先级和结合性199
附录D C语言中常用的库函数201
附录E 一般错误信息及处理方法203
参考文献208
本书以C程序设计语言为工具,以程序设计为主线,编程应用为驱动,通过案例和问题引入内容,重点讲解程序设计的思想和方法,并结合相关的语言知识介绍,各章节中的实例经过集成后,最终构成一个完整的学生成绩管理系统应用程序。全书将基本知识与实际案例相融合,以侧重培养学生从实际问题空间向程序设计空间转换的能力和分析、解决问题的能力,让学生明白C语言知识只是一种工具,突出“程序设计”才是核心的理念。本书适合作为高等院校计算机及相关专业的教材,也可供其他学习C程序设计语言的读者阅读。
以学生成绩管理系统的程序设计为主线,以编程应用为驱动,通过实例和问题引入内容,重点讲解程序设计的思想和方法,并穿插介绍相关的语言知识。电子教案可在清华大学出版社网站下载。