C语言程序设计
作者 : 顾治华 陈天煌 忽朝俭
出版日期 : 2007-01-30
ISBN : 7-111-20761-0
定价 : 25.00元
教辅资源下载
扩展信息
语种 : 简体中文
页数 : 266
开本 : 16开
原书名 :
原出版社:
属性分类: 教材
包含CD :
绝版 :
图书简介

本书是普通高等教育“十一五”国家级规划教材。本书作者结合多年教学经验,针对C语言程序设计的教学思路,在介绍C语言的同时,注重讲解如何应用C语言来编写程序,试图帮助读者克服畏难情绪,在轻松、愉快的气氛中探索程序设计的奥秘。

  本书特点
  ● 面向初学者 书中实例充满趣味性和实用性,语言叙述通俗易懂,难点分散,概念清晰,层次分明。
  ● 专门介绍程序设计方法 为了帮助读者迅速提高程序设计能力,本书专门介绍了常用的程序设计方法,如穷举法、迭代法等。
  ● 实践性强 本书实例众多,注重各部分知识的综合应用训练。
  ● 习题丰富 本书配有实验指导教材,帮助读者梳理所学知识,掌握应会和必会内容。
  ● 教辅资源丰富 本书为授课教师提供教学课件,可减轻教师负担,提高教学经验。需要者可联系 “教学支持联系人”获取。

图书特色

图书前言

C语言是计算机学科重要的核心课程,也是其他理工科专业计算机基础训练的必修课。由于C语言兼备高级程序语言和低级程序语言的诸多优点,在计算机工程实践中也得到了广泛的应用,因此近年来,学习和掌握C语言的需求越来越多,特别是对于进一步提高C语言程序设计能力的需求也越来越多。
  在多年的教学过程中我们发现,相当多的学生学完了“C语言程序设计”课程以后,仅能了解和掌握一些语句的语法知识和语义,但不会应用语言来编写程序,把编程视为十分艰难而又高不可攀的工作。
  本书在介绍C语言的同时,注重讲解如何应用C语言来编写程序,试图帮助读者克服畏难情绪,在轻松、愉快的气氛中探索程序设计的奥妙。学习编程技巧是一个不断实践,反复练习的过程。本书编写的目标就是希望帮助读者缩短这个过程,迅速提高C语言程序设计能力和水平。本书中的算法思维训练和编程思想同样适用于其他高级程序设计语言。本书具有如下特点:
  1) 面向初学者,使略有计算机基础的人都能容易地学会C语言编程。书中实例充满趣味性和实用性,语言叙述通俗易懂,难点分散,概念清晰,层次分明。
  2) 为了帮助读者学会程序设计,本书还专门介绍了一些程序设计的常用方法,如穷举法、迭代法、递推法等。使读者在学习和掌握一门语言的同时养成良好的程序设计习惯。
  3) 注重各部分知识的综合应用训练,以提高程序设计能力为目标。
  4) 习题中选用了部分等级考试试题,对于应试也具有实用性。
  5) 为了帮助读者充分利用Internet上十分丰富的学习资源,本书在附录中提供了百余个中英文的关键词,由这些关键词可搜索到更多更新的C语言程序设计的文献资料。
  本书在写作的过程中,与多名讲授该课程的教师进行过讨论,从他们那里汲取了许多宝贵的教学经验。同时,本书的编写工作还得到了院系领导及机械工业出版社华章分社的大力支持。在此,一并表示衷心的感谢。
  由于计算机科学技术发展迅速,加之编者水平有限,书中错误在所难免,恳请广大读者批评指正,并多多提出宝贵意见。
  作者于武汉理工大学
  2006年10月

封底文字

本书是普通高等教育“十一五”国家级规划教材。本书作者结合多年教学经验,针对C语言程序设计的教学思路,在介绍C语言的同时,注重讲解如何应用C语言来编写程序,试图帮助读者克服畏难情绪,在轻松、愉快的气氛中探索程序设计的奥秘。
  本书特点
  ● 面向初学者 书中实例充满趣味性和实用性,语言叙述通俗易懂,难点分散,概念清晰,层次分明。
  ● 专门介绍程序设计方法 为了帮助读者迅速提高程序设计能力,本书专门介绍了常用的程序设计方法,如穷举法、迭代法等。
  ● 实践性强 本书实例众多,注重各部分知识的综合应用训练。
  ● 习题丰富 本书配有实验指导教材,帮助读者梳理所学知识,掌握应会和必会内容。
  ● 教辅资源丰富 本书为授课教师提供教学课件,可减轻教师负担,提高教学经验。需要者可登录华章网站下载。

图书目录

前言
第1章  C语言程序设计概述 1
1.1  程序与程序设计 1
1.2  C语言简介 2
1.2.1  C语言的发展历程 2
1.2.2  C语言的优点和规则 3
1.3  简单的C语言程序 4
1.4  C语言程序的上机步骤 4
1.5  C语言的基本词法 6
1.6  C语言程序的基本结构 7
本章小结 8
习题 9
第2章  算法及算法设计简介 11
2.1  算法的概念 11
2.2  C语言基本语句类型及算法的表示方式 12
2.2.1  C语言基本语句类型 12
2.2.2  算法的表示方法 12
2.3  简单的算法实例 14
2.4  结构化程序设计方法简介 17
本章小结 18
习题 19
第3章  数据描述与基本操作 20
3.1  基本数据类型 20
3.1.1  整型 20
3.1.2  实型 23
3.1.3  字符型 24
3.2  常用的运算符和表达式 27
3.2.1  赋值运算符 27
3.2.2  算术运算符 29
3.2.3  位运算符 31
3.2.4  条件运算符和逗号运算符 34
3.2.5  长度测试运算符 35
3.2.6  数值型数据的混合运算 35
3.3  表达式及赋值语句 36
3.4  基本输入输出操作的实现 36
3.4.1  基本输入输出的概念 36
3.4.2  字符、字符串数据的输入输出 37
3.4.3  格式化输入输出函数 38
3.5  顺序结构程序设计实例 44
本章小结 46
习题 46
第4章  选择结构程序设计 52
4.1  关系运算符与关系表达式 52
4.1.1  关系运算符及其优先次序 52
4.1.2  关系表达式 53
4.2  逻辑运算符和逻辑表达式 53
4.2.1  逻辑运算符及其优先次序 53
4.2.2  逻辑表达式 54
4.3  if语句 54
4.3.1  if语句的三种形式 55
4.3.2  if语句的嵌套 57
4.4  switch语句 59
4.5  选择结构程序设计实例 61
本章小结 64
习题 64
第5章  循环结构程序设计 69
5.1  循环结构的应用场合 69
5.2  while语句 69
5.3  do~while语句 70
5.4  for语句 72
5.5  多重循环 74
5.6  几种循环语句的比较 75
5.7  转移控制语句 75
5.7.1  break语句 75
5.7.2  continue语句 76
5.7.3  goto语句 77
5.8  单循环及多重循环结构的实例 77
本章小结 79
习题 79
第6章  数组与指针 85
6.1  数组 85
6.1.1  数组的概念 85
6.1.2  数组的定义、初始化和引用 86
6.1.3  字符数组 91
6.2  指针的概念 97
6.2.1  地址与指针的概念 97
6.2.2  指针的定义与引用 98
6.3  指针与数组 101
6.3.1  指向一维数组的指针 101
6.3.2  指向多维数组的指针 104
6.4  字符串的指针 107
6.5  指针数组和数组指针 109
6.5.1  指针数组 109
6.5.2  数组指针 111
6.6  指向指针的指针 111
本章小结 112
习题 112
第7章  函数与模块化程序设计 121
7.1  模块化程序设计与C程序结构 121
7.1.1  模块化程序设计方法的指导思想 121
7.1.2  模块分解的原则 121
7.1.3  C程序的一般结构 122
7.2  函数定义与函数声明 123
7.2.1  函数定义 123
7.2.2  函数声明 124
7.3  参数的返回与参数传递 125
7.3.1  函数的返回 125
7.3.2  形参与实参 126
7.4  函数的调用 127
7.4.1  函数调用的一般形式 127
7.4.2  函数的传值调用 128
7.4.3  地址传送方式传递数据 129
7.4.4  库函数的调用 130
7.5  函数的嵌套与递归调用 131
7.5.1  函数的嵌套调用 131
7.5.2  函数的递归调用 132
7.6  变量的存储类型 133
7.6.1  动态存储和静态存储 133
7.6.2  变量的作用域 133
7.6.3  动态变量 136
7.6.4  寄存器变量 136
7.6.5  局部静态变量 137
7.6.6  外部变量 138
7.7  数组与函数参数 138
7.7.1  数组元素作为函数实参 138
7.7.2  数组名作为函数实参 139
7.8  指针与函数 143
7.8.1  指向函数的指针 143
7.8.2  返回指针的函数 145
本章小结 146
习题 146
第8章  结构体和共用体 155
8.1  结构体类型概述 155
8.2  结构体变量的定义和引用 156
8.2.1  结构体变量的定义 156
8.2.2  结构体变量的初始化 157
8.2.3  结构体变量的引用 157
8.3  结构体数组 159
8.3.1  结构体数组的定义 159
8.3.2  结构体数组的初始化 160
8.3.3  结构体数组的引用 160
8.4  结构和指针 160
8.4.1  指向结构体变量的指针 161
8.4.2  指向结构体数组的指针 162
8.4.3  指向结构体的指针作函数参数 162
8.5  动态存储分配 164
8.5.1  链表概述 164
8.5.2  动态存储分配的函数 164
8.5.3  建立链表 165
8.5.4  链表的插入操作 167
8.5.5  链表的删除操作 168
8.6  共用体类型 169
8.6.1  共用体类型的定义 169
8.6.2  共用体类型变量的特点 169
8.6.3  共用体类型变量的引用方式 170
8.7  枚举类型 171
8.8  用typedef 定义类型 172
8.8.1  位域 172
8.8.2  typedef语句的使用 173
本章小结 174
习题 174
第9章  编译预处理 178
9.1  宏定义 178
9.1.1  简单宏定义 178
9.1.2  带参数的宏定义 179
9.2  文件包含 182
9.3  条件编译 183
9.4  行控制 183
9.5  带参数的主函数 184
本章小结 184
习题 184
第10章  文件 187
10.1  C文件系统的分类 187
10.2  文件的打开与关闭 188
10.2.1  文件类型指针 188
10.2.2  打开文件 188
10.2.3  关闭文件 190
10.3  文件的读写 190
10.3.1  字符输入/输出函数 190
10.3.2  格式输入/输出函数 191
10.3.3  字符串输入/输出函数 192
10.3.4  “记录”方式的输入和输出 193
10.4  文件处理的其他常用函数 194
10.4.1  文件的定位 194
10.4.2  出错检测 196
本章小结 196
习题 196
第11章  常用程序设计方法 198
11.1  排序及应用 198
11.1.1  排序算法的种类 198
11.1.2  冒泡排序法 199
11.1.3  选择排序法 200
11.1.4  插入排序法 200
11.1.5  希尔排序法 201
11.2  查找 202
11.2.1  顺序查找 202
11.2.2  折半查找 202
11.3  迭代法 203
11.4  递推法 205
11.5  穷举搜索法 206
11.6  递归法 210
11.7  回溯法 216
11.8  贪婪法 223
11.9  分治法 228
本章小结 229
习题 230
第12章  C语言图形介绍 231
12.1  键盘控制 231
12.2  鼠标控制 231
12.3  光标控制 232
12.4  Turbo C 的图形功能 233
12.5  图形方式下的文本输出函数 236
12.6  常用统计图形的绘制 239
12.7  综合应用实例 243
本章小结 244
第13章  C++介绍 245
13.1  C++的特点 245
13.1.1  C转入C++时不需改变的内容 245
13.1.2  C转入C++时一些与类无关的
新特性 246
13.2  C++的核心新特性—类 248
13.2.1  类和对象 248
13.2.2  类成员的访问 249
13.2.3  构造函数和析构函数 250
本章小结 252
附录 253
参考文献 266

教学资源推荐
作者: (美) Bruce Eckel
作者: [美]本贾尼·斯特劳斯特卢普(Bjarne Stroustrup) 著
作者: Keith D.Cooper, Linda Torczon
作者: 王珊珊 臧洌 张志航 编著
参考读物推荐
作者: Andrew Koenig;Barbara E. Moo
作者: (美)Robert Clair 著
作者: (美)Aaron Hillegass,Adam Preble 著