欢迎来到中国铁道出版社有限公司官网!
$itImage.title$

C语言程序设计教程

书      号:9787113114282

丛  书 名:21世纪高等院校规划教材

作      者:陈波 吉根林

译      者:

开      本:16开

装      帧:平装

正文语种:

出  版 社:中国铁道出版社有限公司

定      价:29.8

  • 内容简介

    本书面向初学者,立足C99标准,重点介绍了与C89兼容的内容。全书共分10章:第1章介绍程序设计语言的发展、C语言的发展、特点以及C语言的标准,分析了C语言源程序的实例结构,给出了上机运行C程序的步骤;第2章介绍了数据类型、常用表达式和运算符;第3章介绍了基本语句与结构化程序设计,重点分析了顺序、分支、循环3种基本控制结构在程序设计中的应用;第4章介绍了数组;第5章介绍了函数和模块化程序设计;第6章介绍了指针;第7章介绍了编译预处理的使用;第8章介绍了结构体、共用体和枚举类型;第9章介绍了文件的基本操作;第10章介绍了位运算操作。
  • 前言

    “C语言程序设计”是高等学校计算机科学与技术及相近专业中程序设计类最重要的基础课程之一,也是理工科相关专业重要的公共基础课,全国以及各省市的计算机等级考试等都将C语言列入了考试范围。学习C语言、学好C语言是每一个准备从事计算机或相关行业人员的迫切愿望。
    本教材的5位作者全部是多年从事本科生“C语言程序设计”课程教学的教师,在多年的C语言教学实践中,学生普遍反映难学难懂;听课时懂了,上机时脑子一片空白;笔试时的题目会做,编程题却无从下手;有解答、分析的编程题会了,面对新问题又不知如何解决……
    面对诸如此类的问题,几位作者进行了多年的思考和教学实践。本教材就是作者多年从事“C语言程序设计”课程中,进行教学内容与教学方法改革与探索的结晶。
    首先,本书面向初学者,立足C99标准,重点介绍了与C89兼容的内容,全书体系完整,内容条理清晰,语言流畅。全书共分10章:第1章介绍程序设计语言的发展、C语言的发展、特点以及C语言的标准,分析了C语言源程序的实例结构,给出了上机运行一个C程序的步骤;第2章介绍了数据类型、常用表达式和运算符;第3章介绍了基本语句与结构化程序设计,重点分析了顺序、分支、循环3种基本控制结构在程序设计中的应用;第4章介绍了数组;第5章介绍了函数和模块化程序设计;第6章介绍了指针;第7章介绍了编译预处理的使用;第8章介绍了结构体、共用体和枚举类型;第9章介绍了文件的基本操作;第10章介绍了位运算操作。
    其次,本书内容讲解由浅入深,直观易懂,既重视对知识点的梳理,又重视对编程能力的训练。例如,每章附有较多图表,使读者能够准确、直观地理解问题;样例丰富,紧扣知识点,一些样例在多个章节中用不同的编程方法实现,便于读者对于相关知识在编程中的应用进行比较;每个例题均在Visual C++ 6.0开发环境中运行通过,并给出运行结果图,可操作性强;样例中给出编程方法分析以及技巧的讲解;注重对读者良好编程风格的引导,每个例程均增加空行和适当的注释;每章后面还给出了初学者在编程中易犯的错误,使读者在学习中少走弯路。
    最后,本书每章均附有习题和上机实验题,习题覆盖知识重点、题型丰富。书后附录提供了两套笔试和上机模拟试卷,做到了教材、实验、习题三位一体。初学者可以通过从书本知识的学习到课后练习再到上机实践,一个层次一个层次地复习、巩固、实践所学内容。
    本教材第1章和第10章由吉根林教授编写;第2章由王琼副教授编写;第3章和第7章由陈波副教授编写;第4章和第6章由周俊生副教授编写;第5章由王琼和陈波共同编写;第8章和第9章由于泠副教授编写;附录由陈波和王琼编写。全书由陈波和吉根林担任主编,并负责最后统稿、修改和定稿。本书出版过程中得到了南京师范大学教改项目“计算机专业本科生创新性训练体系建设研究”的支持,以及中国铁道出版社的大力支持,在此表示衷心的感谢!
    为了便于教师使用本书教学,本书为任课教师提供电子课件,其中包括全部例题和习题参考解答。
    由于编者水平有限,书中难免存在不妥和疏漏之处,敬请读者批评指正。
    编者E-mail:njnu_c@163.com
  • 目录

    第1章 C语言概述 1
    1.1 程序与程序设计语言 1
    1.1.1 计算机与程序 1
    1.1.2 程序设计语言 1
    1.1.3 高级语言程序的开发过程 2
    1.2 C语言的发展和特点 4
    1.2.1 C语言的发展历史 4
    1.2.2 C语言的特点 5
    1.2.3 C和C++ 6
    1.3 C语言程序的结构 6
    1.4 C语言程序的上机步骤 10
    本章小结及常见错误分析 11
    习题1 11
    上机实验题1 11
    第2章 数据类型 12
    2.1 数据类型的概念 12
    2.2 常量和变量 12
    2.2.1 字面常量 12
    2.2.2 符号常量 13
    2.2.3 变量 15
    2.2.4 标识符的命名规则 17
    2.3 整型数据 18
    2.3.1 整型的分类 18
    2.3.2 整型数据的内存表示 18
    2.4 实型数据 19
    2.4.1 实型数据的内存表示 19
    2.4.2 实型数据的精确表示 19
    2.5 字符型数据 20
    2.5.1 字符的内存表示 20
    2.5.2 转义字符 21
    2.5.3 字符型与整型的等价关系 21
    2.6 数据类型转换 24
    2.6.1 自动类型转换 24
    2.6.2 强制类型转换 26
    2.7 算术运算符与算术表达式 26
    2.7.1 C语言运算符简介 26
    2.7.2 C基本的算术运算符 27
    2.7.3 运算符的优先级与结合性 27
    2.7.4 自增、自减运算符 27
    2.8 赋值运算符与赋值表达式 30
    2.8.1 赋值运算符 30
    2.8.2 赋值中的类型转换 30
    2.8.3 复合赋值运算符 31
    2.8.4 赋值表达式 32
    2.9 逗号运算符与逗号表达式 32
    本章小结及常见错误分析 33
    习题2 34
    上机实验题2 36
    第3章 基本语句与结构化程序设计 37
    3.1 程序与基本语句 37
    3.1.1 程序的概念 37
    3.1.2 程序的评价 40
    3.1.3 C基本语句 40
    3.2 顺序结构程序设计 42
    3.2.1 赋值语句 42
    3.2.2 数据的格式化输入/输出 43
    3.2.3 字符数据的非格式化输入/输出 50
    3.2.4 顺序结构程序设计举例 52
    3.3 分支结构程序设计 53
    3.3.1 关系运算符与关系表达式 54
    3.3.2 逻辑运算符与逻辑表达式 55
    3.3.3 if语句 56
    3.3.4 switch语句 62
    3.3.5 分支结构程序设计举例 64
    3.4 循环结构程序设计 66
    3.4.1 for语句 66
    3.4.2 while语句 69
    3.4.3 do…while语句 70
    3.4.4 几种循环的比较及应用举例 71
    3.4.5 break和continue语句 75
    3.4.6 循环的嵌套 76
    3.5 综合应用举例 81
    本章小结及常见错误分析 85
    习题3 87
    上机实验题3 88
    第4章 数组 90
    4.1 一维数组 90
    4.1.1 一维数组的定义与初始化 90
    4.1.2 一维数组的引用 91
    4.1.3 一维数组应用举例 93
    4.2 二维数组 96
    4.2.1 二维数组的定义与初始化 96
    4.2.2 二维数组的引用 97
    4.2.3 二维数组应用举例 98
    4.3 字符串与字符数组 100
    4.3.1 字符数组的定义与初始化 100
    4.3.2 字符串的输入/输出 102
    4.3.3 字符串处理函数 104
    4.3.4 字符数组应用举例 106
    本章小结及常见错误分析 110
    习题4 111
    上机实验题4 113
    第5章 函数和模块化程序设计 115
    5.1 模块化程序设计方法 115
    5.2 函数的定义与声明 116
    5.2.1 函数的主要语法成分 116
    5.2.2 函数编程示例 120
    5.3 参数传递与返回值类型 122
    5.3.1 参数的传递规则 122
    5.3.2 函数返回值类型 122
    5.4 局部变量与全局变量 123
    5.4.1 局部变量 123
    5.4.2 全局变量 124
    5.4.3 重名问题 125
    5.5 变量的存储属性 126
    5.5.1 动态变量与静态变量 126
    5.5.2 寄存器变量 127
    5.6 数组名作为函数参数 128
    5.6.1 一维数组名作为函数参数 128
    5.6.2 二维数组名作为函数参数 133
    5.7 函数的嵌套调用 136
    5.8 递归函数 138
    本章小结及常见错误分析 143
    习题5 144
    上机实验题5 147
    第6章 指针 149
    6.1 指针与地址的概念 149
    6.2 指向变量的指针 150
    6.2.1 指针变量的定义与初始化 150
    6.2.2 通过指针访问变量 151
    6.2.3 指针变量作为函数参数 152
    6.2.4 指针的强制转换 155
    6.2.5 void指针类型 156
    6.3 指针与一维数组 157
    6.3.1 指针的算术运算 157
    6.3.2 指针用于数组处理 159
    6.3.3 指针与字符串 162
    6.3.4 数组名作为函数参数 165
    6.4 指针与二维数组 169
    6.4.1 指针与二维数组的关系 169
    6.4.2 向函数传递二维数组 171
    6.5 指针数组和指向指针的指针 174
    6.5.1 指针数组的定义与使用 174
    6.5.2 指针数组与字符串数组 176
    6.5.3 指向指针的指针 177
    6.5.4 main()函数的形参 179
    6.6 指向函数的指针 181
    6.6.1 函数指针的定义与使用 181
    6.6.2 函数指针数组的使用 182
    6.6.3 函数指针作为函数参数 184
    6.7 返回指针的函数 186
    本章小结及常见错误分析 189
    习题6 191
    上机实验题6 194
    第7章 编译预处理 196
    7.1 宏定义 196
    7.1.1 无参宏定义 196
    7.1.2 带参宏定义 198
    7.2 文件包含 201
    7.3 条件编译 202
    7.4 C语言程序的结构 205
    本章小结及常见错误分析 206
    习题7 207
    上机实验题7 208
    第8章 结构体、共用体和枚举类型 209
    8.1 结构体类型与结构体变量 209
    8.1.1 结构体类型的定义 210
    8.1.2 结构体变量的定义及初始化 211
    8.1.3 结构体变量的引用 214
    8.1.4 程序举例 214
    8.2 结构体数组 215
    8.2.1 结构体数组的定义与初始化 216
    8.2.2 程序举例 217
    8.3 指向结构体的指针 219
    8.3.1 指向结构体变量的指针 219
    8.3.2 指向结构体数组的指针 221
    8.4 用typedef定义类型 222
    8.5 结构体的应用——链表 224
    8.5.1 链表的概念 224
    8.5.2 链表结点的定义 225
    8.5.3 链表的建立 226
    8.5.4 链表的基本操作 229
    8.6 共用体类型 233
    8.6.1 共用体的定义 233
    8.6.2 程序举例 234
    8.7 枚举类型 235
    本章小结及常见错误分析 236
    习题8 237
    上机实验题8 241
    第9章 文件 242
    9.1 文件的概念 242
    9.1.1 C语言文件的分类 242
    9.1.2 文件操作的基本步骤 243
    9.2 文件类型指针 243
    9.3 文件的常用操作 244
    9.3.1 文件的打开与关闭 244
    9.3.2 文件的读/写 247
    9.3.3 文件的定位 254
    9.3.4 文件的检测 257
    9.4 文件操作函数小结 258
    9.5 应用举例 259
    本章小结及常见错误分析 261
    习题9 262
    上机实验题9 265
    第10章 位运算 266
    10.1 位运算符和位运算 266
    10.1.1 按位与运算符 266
    10.1.2 按位或运算符 267
    10.1.3 按位异或运算符 267
    10.1.4 取反运算符 268
    10.1.5 左移运算符 269
    10.1.6 右移运算符 269
    10.2 位运算应用举例 270
    本章小结及常见错误分析 271
    习题10 272
    上机实验题10 272
    附录A 常见字符与ASCII代码对照表 273
    附录B C语言运算符的优先级和结合性 274
    附录C Visual C++ 6.0环境下C程序的基本开发过程 275
    附录D 模拟试卷 288
    参考文献 304
  • 作者介绍

    主要著译者顺序姓名学历职称学科专长通讯地址1 陈波博士 副教授 计算机工作单位南京师范大学计算机学院 邮政编码210097 电话 139517457722 工作单位 邮政编码 电话 3 工作单位 邮政编码 电话 审校者(主审者) 学历 工作单位 邮政编码 电话 职称 工作单位 邮政编码 电话
  • 编辑推荐

    本书写法上注意读者学习规律,由浅入深,较容易上手。其内容大纲与江苏省计算机等级考试紧密相连,且配有等级考试模拟试题,对想参加等级考试的读者有很大的帮助。
  • 书评书荐

  • 附件下载

图书推荐