定 价:29 元
丛书名:/upload/images/363/136/1297661363.jpg
- 作者:张建勋、纪纲、陈渝等
- 出版时间:2008/2/1
- ISBN:9787302168133
- 出 版 社:清华大学出版社
- 中图法分类:TP312
- 页码:
- 纸张:21
- 版次:1
- 开本:16开
- 字数:(单位:千字)
随着我国改革开放的进一步深化,高等教育也得到了快速发展,各地高校紧密结合地方经济建设发展需要,科学运用市场调节机制,加大了使用信息科学等现代科学技术提升、改造传统学科专业的投入力度,通过教育改革合理调整和配置了教育资源,优化了传统学科专业,积极为地方经济建设输送人才,为我国经济社会的快速、健康和可持续发展以及高等教育自身的改革发展做出了巨大贡献。但是,高等教育质量还需要进一步提高,以适应经济社会发展的需要,不少高校的专业设置和结构不尽合理,教师队伍整体素质亟待提高,人才培养模式、教学内容和方法需要进一步转变,学生的实践能力和创新精神亟待加强。
C语言是当今最流行的程序设计语言之一,它功能丰富、表达力强、使用灵活方便、应用面广、目标程序高、可移植性好,既具有高级语言的特点,又具有低级语言的许多特点,适合作为系统描述语言,既可以用来编写系统软件,也可以用来编写应用软件。C语言诞生后,许多原来用汇编语言编写的软件,现在都可以用C语言编写了(例如,著名的UNIX操作系统就是用C语言编写的),而学习和使用C语言要比学习和使用汇编语言容易得多。因此,许多高校的高级语言程序设计课程都主要以C语言作为程序设计语言。
C语言程序设计是计算机专业的入门课程,该课程不仅重视理论教学,更加强调学生的动手实践能力,因此,迫切需要一本内容新颖、体系合理、逻辑性强、通俗易懂的C语言教材。
本书注重教材的可读性和适用性,每章开头都给出了双语教学英语词汇;在“承上启下”中介绍本章内容与前面章节知识点的关系、本章内容与后面章节知识点的关系;在“指点要津”中给出该章学习意义和学习目标;在“小结”中对关键知识点和要求掌握的知识点进行了详细的说明;附有大量的图表、程序使读者能正确、直观地理解问题;样例程序由浅入深,强化知识点、算法、编程方法与技巧,并给出了详细的解释;另外,本书还配套提供题型丰富的习题。
全书由重庆工学院“C语言程序设计”精品课程建设小组的教师集体编写完成。本书的作者都是长期在高校从事“C语言程序设计”教学的一线教师,有丰富的教学经验和软件开发能力。书中文字流畅、通俗易懂、概念清楚、深入浅出、例题丰富,实用性强。
第1、2章由崔建国博士编写,第3章由金艳编写,第4章由刘春萌副教授编写,第5章由付国瑜编写,第6章由张建勋教授编写,第7章由杨长辉编写,第8章由纪纲教授编写,第9章由洪雄编写,第10章由王华秋博士编写,第11章由陈渝副教授编写。全书由张建勋教授统稿。
本书可作为高等学校大学本科、高职高专学生“C语言程序设计”课程教学用书,也可作为全国计算机水平考试及各类短训班的培训教材。
为了方便教学,我们开发了计算机网络考试系统,使用本书的院校可通过邮件“zhangjianxuncq@sina.com”向作者索取。
由于我们的水平有限,本书可能会有不尽如人意和疏漏之处,敬请读者批评指正,以便我们及时修改。
第1章 C语言程序设计基础1
1.1 C语言的发展及其特点和应用2
1.1.1 C语言的发展2
1.1.2 C语言的特点3
1.2 C语言程序的基本结构4
1.3 算法表示方法8
1.4 运行C语言程序的基本步骤14
小结18
习题一18
第2章 基本数据类型、运算符与表达式21
2.1 C语言的数据类型22
2.2 常量、变量和标识符23
2.3 简单数据类型与表示范围27
2.3.1 整型数据27
2.3.2 实型数据31
2.3.3 字符型数据和字符串常量33
2.3.4 各数据类型间的混合运算37
2.3.5 简单数据类型的表示范围38
2.3.6 数据的简单输出39
2.4 C语言的运算符与表达式40
2.4.1 C语言运算符简介40
2.4.2 赋值运算符和赋值表达式41
2.4.3 强制类型转换符46
2.4.4 算术运算符和算术表达式47
2.4.5 自增自减运算符49
2.4.6 位运算符、位运算表达式51
2.4.7 逗号运算符和逗号表达式53
2.4.8 指针运算符、sizeof运算符55
2.5 运算符的优先级和结合性55
小结56
习题二58
第3章 顺序结构程序设计61
3.1 结构化程序设计62
3.1.1 结构化程序设计概述62
3.1.2 结构化程序设计的基本结构及其特点63
3.2 C语句概述63
3.3 输入输出介绍65
3.3.1 格式化输出函数printf65
3.3.2 格式化输入函数scanf68
3.3.3 字符输出函数putchar69
3.3.4 字符输入函数getchar70
3.4 顺序结构程序设计举例71
小结73
习题三73
第4章 选择结构程序设计75
4.1 关系运算符、逻辑运算符、条件运算符75
4.1.1 关系运算符和关系表达式75
4.1.2 逻辑运算符和逻辑表达式76
4.1.3 条件运算符和条件表达式77
4.2 选择结构的程序设计78
4.2.1 if语句78
4.2.2 switch语句79
4.3 选择结构程序设计举例81
小结85
习题四85
第5章 循环结构程序设计87
5.1 while语句88
5.2 do-while语句90
5.3 for语句93
5.4 goto、break、continue语句95
5.5 循环的嵌套97
5.6 程序举例98
小结101
习题五101
第6章 数组103
6.1 一维数组的定义和引用105
6.1.1 一维数组的定义105
6.1.2 一维数组元素的引用106
6.1.3 一维数组的初始化107
6.1.4 一维数组程序举例108
6.2 二维数组110
6.2.1 二维数组的定义111
6.2.2 二维数组元素的引用111
6.2.3 二维数组的初始化112
6.2.4 二维数组程序举例113
6.3 字符数组116
6.3.1 字符数组的定义116
6.3.2 字符数组的初始化116
6.3.3 字符数组的引用117
6.3.4 字符串118
6.3.5 字符串的输入输出119
6.3.6 字符串操作函数122
6.3.7 字符数组应用举例124
小结127
习题六128
第7章 函数129
7.1 函数概述132
7.1.1 函数与模块化程序设计方法132
7.1.2 函数的分类133
7.1.3 主函数134
7.2 函数定义和调用134
7.2.1 函数定义134
7.2.2 函数调用138
7.3 函数参数传递140
7.3.1 传值调用140
7.3.2 传址调用141
7.4 函数与数组143
7.5 函数与指针148
7.5.1 返回指针的函数149
*7.5.2 指向函数的指针150
7.6 函数与结构152
7.6.1 结构指针及结构变量的传址调用152
7.6.2 结构型函数154
7.6.3 结构指针型函数155
7.7 递归函数156
*7.8 命令行参数161
7.9 标准库函数163
7.10 程序举例164
小结169
习题七169
第8章 指针172
8.1 指针与指针变量的概念173
8.1.1 指针的概念173
8.1.2 指针变量173
8.2 指针变量的定义和引用176
8.2.1 指针变量的定义176
8.2.2 指针变量的引用177
8.3 指针和地址运算179
8.4 指针与数组180
8.4.1 指针变量与数组180
8.4.2 指针变量在一维数组中的应用183
8.4.3 指针变量在多维数组中的应用185
8.5 指针与字符串191
8.5.1 字符串操作的特点及字符指针变量的引入191
8.5.2 指向字符串的指针变量191
8.6 指针数组与多级指针194
8.6.1 指针数组194
8.6.2 指针数组的使用195
8.6.3 多级指针196
8.7 指针变量与函数198
8.7.1 函数的操作方式与指针变量198
8.7.2 指针型函数的定义与使用199
8.7.3 函数指针的定义与使用200
8.7.4 与指针有关的函数参数传递方式202
8.7.5 带参数的main函数和命令行参数207
8.8 指针与动态内存分配208
8.8.1 动态存储的概念208
8.8.2 C语言的动态存储管理方式209
小结211
习题八214
第9章 编译预处理220
9.1 宏定义222
9.1.1 不带参数的宏定义222
9.1.2 带参数的宏定义224
9.2 文件包含处理228
9.3 条件编译232
小结236
习题九238
第10章 复杂数据类型241
10.1 复杂数据类型概述242
10.2 结构体243
10.2.1 结构体类型的定义243
10.2.2 结构体变量的定义和引用244
10.2.3 结构体变量的赋值247
10.2.4 结构体数组248
10.3 线性链表251
10.3.1 固定内存分配与动态内存分配的概念251
10.3.2 链表的概念253
10.3.3 动态存储分配链表的基本操作256
10.4 共用体259
10.4.1 共用体类型的定义259
10.4.2 共用体变量的定义和引用259
10.4.3 共用体变量的赋值261
10.5 枚举类型262
10.5.1 枚举类型的定义262
10.5.2 枚举变量的说明与引用262
10.6 自定义类型264
10.7 复杂数据类型应用综合举例266
小结269
习题十270
第11章 文件276
11.1 文件的基本概念277
11.2 文件的类别279
11.3 文件指针280
11.4 文件操作概述280
11.5 文件的打开、读/写和关闭281
11.5.1 文件的打开(fopen函数)281
11.5.2 文件的关闭(fclose函数)283
11.5.3 文件的读/写283
11.6 文件的定位读/写290
11.7 文件应用综合举例291
小结295
习题十一295
附录A C语言的字符集-ASCII字符表296
附录B C语言的关键字297
附录C 运算符的结合性298
附录D C语言的库函数299
附录E C语言常见错误306
附录F Turbo C常见错误提示英汉311
附录G 重庆市计算机二级等级考试大纲315
参考文献319