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

C语言程序设计

书      号:9787113204723

丛  书 名:

作      者:徐凤生 黄超 谢玉华

译      者:

开      本:16开

装      帧:平装

正文语种:

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

定      价:34

  • 内容简介

    本书是在作者多年教学经验的基础上编写而成,全书共分为12章,内容包括C语言程序设计基础知识、各种数据类型和常用库函数、各种运算符和表达式、程序控制语句、数组、函数、指针、结构体与共用体、编译预处理、文件、常用算法以及C程序设计举例等。本书是山东省省级教学团队项目的研究成果,在内容安排上,注重理论与实践相结合,突出学生编程能力的培养。
    本书适合作为高等学校计算机及相关专业“C语言程序设计”课程的教材,也可作为全国计算机等级考试二级C语言程序设计的培训教材。
  • 前言

    C 语言既具备高级语言的特点,又具有直接操纵计算机硬件的能力,并因其丰富灵活的控制
    和数据结构、简洁而高效的语句表达、清晰的程序结构和良好的可移植性而拥有大量的使用者。
    目前,国内几乎所有高校都开设了“C 语言程序设计”课程,该课程不仅是计算机学科的主干课
    程,也成为理工科专业计算机基础训练的必修课。
    本书是在编者多年教学经验的基础上编写而成,共分为12 章,内容包括C 语言程序设计基
    础知识、各种数据类型和常用库函数、各种运算符和表达式、程序控制语句、数组、函数、指针、
    结构体与共用体、编译预处理、文件、常用算法与以及语言程序设计举例等。
    本书具有如下特色:
    (1)语言通俗易懂,阐述简洁明了。
    (2)遵循“注重理论、强化实践”的核心思想,注重各部分知识的综合应用训练,以提高
    学生的程序设计能力。
    (3)例题丰富,分析透彻,讲解清楚,不仅有效降低了学习难度,而且突出了算法思想设计。
    (4)通过典型例题的分析,使学生对所学知识更加系统化和条理化,更易于对所学知识的
    融会贯通和举一反三。
    (5)所有程序示例都在VC++ 6.0 环境下调试通过。每章都配有上机实验和习题,便于学生
    课后及时练习。
    (6)为了便于教师教学,本书配有电子课件和习题答案,可与出版社直接联系或发送邮件
    至xfs@dzu.edu.cn 与作者联系索取。
    在编写中我们参阅了许多C 语言程序设计教材和相关资料,在此向其作者一并表示感谢。本
    书的出版得到了德州学院教材出版基金和山东省“信息与计算科学”省级教学团队项目的资助。
    最后,还要特别感谢中国铁道出版社的大力支持,使得本书得以顺利出版。
    限于编者水平,书中难免存在疏漏和不足之处,恳请读者不吝指正。
    编 者
    2015年3月于德州学院
  • 目录

    第1章 C语言概述................................................................................................................... 1
    1.1 C语言的发展历史与特点................................................................................................ 1
    1.1.1 C语言的发展历史..........................................................................................................1
    1.1.2 C语言的特点..................................................................................................................2
    1.2 程序设计与算法............................................................................................................... 3
    1.2.1 程序设计..........................................................................................................................3
    1.2.2 算法的特征.....................................................................................................................3
    1.2.3 算法设计的原则.............................................................................................................3
    1.2.4 算法的描述方法.............................................................................................................4
    1.2.5 算法的时间复杂度和空间复杂度.................................................................................5
    1.3 C语言程序示例................................................................................................................ 5
    1.4 C语言的基本语法元素.................................................................................................... 7
    1.4.1 C语言的基本词法..........................................................................................................7
    1.4.2 C语言的主要语法单位..................................................................................................8
    1.5 C语言程序设计求解问题的步骤.................................................................................. 10
    1.6 C语言程序的调试方法.................................................................................................. 11
    1.6.1 静态调试........................................................................................................................12
    1.6.2 动态调试........................................................................................................................13
    1.7 典型例题......................................................................................................................... 14
    1.8 上机实验......................................................................................................................... 15
    习题1 ...................................................................................................................................... 15
    第2章 数据类型、运算符与表达式........................................................................................ 17
    2.1 数据类型......................................................................................................................... 17
    2.1.1 基本类型........................................................................................................................17
    2.1.2 其他数据类型...............................................................................................................19
    2.2 常量................................................................................................................................ 19
    2.2.1 整型常量........................................................................................................................20
    2.2.2 实型常量........................................................................................................................20
    2.2.3 字符型常量...................................................................................................................20
    2.2.4 字符串常量...................................................................................................................21
    2.2.5 符号常量........................................................................................................................22
    2.3 变量................................................................................................................................ 22
    2.3.1 变量的定义...................................................................................................................23
    2.3.2 变量赋初值...................................................................................................................23
    contents
    目录
    2
    C 语言程序设计
    2.3.3 整型变量....................................................................................................................... 23
    2.3.4 实型变量....................................................................................................................... 24
    2.3.5 字符型变量................................................................................................................... 25
    2.4 各种数据类型的转换...................................................................................................... 25
    2.4.1 隐式转换....................................................................................................................... 25
    2.4.2 强制转换....................................................................................................................... 26
    2.5 运算符和表达式............................................................................................................. 26
    2.5.1 算术运算符与算术表达式.......................................................................................... 28
    2.5.2 关系运算符和关系表达式.......................................................................................... 30
    2.5.3 逻辑运算符和逻辑表达式.......................................................................................... 31
    2.5.4 赋值运算符和赋值表达式.......................................................................................... 32
    2.5.5 逗号运算符和逗号表达式.......................................................................................... 33
    2.5.6 条件运算符和条件表达式.......................................................................................... 33
    2.5.7 位运算符....................................................................................................................... 34
    2.6 典型例题......................................................................................................................... 37
    2.7 上机实验......................................................................................................................... 38
    习题2 ...................................................................................................................................... 39
    第3章 顺序结构程序设计...................................................................................................... 42
    3.1 数据输出......................................................................................................................... 42
    3.1.1 字符输出函数putchar() ............................................................................................... 42
    3.1.2 格式输出函数printf() ................................................................................................... 43
    3.2 数据输入......................................................................................................................... 46
    3.2.1 字符输入函数getchar() ................................................................................................ 46
    3.2.2 格式输入函数scanf() ................................................................................................... 47
    3.3 顺序结构......................................................................................................................... 49
    3.4 典型例题......................................................................................................................... 50
    3.5 上机实验......................................................................................................................... 52
    习题3 ...................................................................................................................................... 53
    第4章 分支结构程序设计...................................................................................................... 56
    4.1 if语句..............................................................................................................................56
    4.1.1 if语句的3种基本形式............................................................................................... 56
    4.1.2 if语句的嵌套................................................................................................................ 58
    4.2 switch语句...................................................................................................................... 59
    4.3 典型例题......................................................................................................................... 62
    4.4 上机实验......................................................................................................................... 65
    习题4 ...................................................................................................................................... 66
    第5章 循环结构程序设计...................................................................................................... 70
    5.1 while语句........................................................................................................................ 70
    5.2 do-while 语句.................................................................................................................. 71
    3
    目 录
    5.3 for语句............................................................................................................................ 73
    5.4 循环的嵌套..................................................................................................................... 75
    5.5 break和continue语句.................................................................................................... 76
    5.5.1 break语句..................................................................................................................... 76
    5.5.2 continue语句................................................................................................................ 76
    5.6 典型例题......................................................................................................................... 77
    5.7 上机实验......................................................................................................................... 79
    习题5 ...................................................................................................................................... 81
    第6章 数组............................................................................................................................ 85
    6.1 一维数组......................................................................................................................... 85
    6.1.1 一维数组的定义........................................................................................................... 85
    6.1.2 一维数组的初始化....................................................................................................... 86
    6.1.3 一维数组的引用........................................................................................................... 86
    6.2 二维数组......................................................................................................................... 88
    6.2.1 二维数组的定义........................................................................................................... 88
    6.2.2 二维数组的初始化....................................................................................................... 89
    6.2.3 二维数组的引用........................................................................................................... 89
    6.3 字符数组与字符串......................................................................................................... 90
    6.3.1 字符数组的定义与初始化.......................................................................................... 90
    6.3.2 字符数组的输入和输出............................................................................................... 91
    6.3.3 字符串处理函数........................................................................................................... 93
    6.4 典型例题......................................................................................................................... 97
    6.5 上机实验......................................................................................................................... 99
    习题6 .................................................................................................................................... 101
    第7章 函数.......................................................................................................................... 105
    7.1 函数定义....................................................................................................................... 105
    7.1.1 无参函数..................................................................................................................... 105
    7.1.2 有参函数..................................................................................................................... 106
    7.2 函数声明....................................................................................................................... 107
    7.3 参数的返回与参数传递................................................................................................ 108
    7.3.1 函数的返回................................................................................................................. 108
    7.3.2 形参与实参................................................................................................................. 109
    7.4 函数调用....................................................................................................................... 110
    7.4.1 函数调用的一般形式................................................................................................. 110
    7.4.2 函数的传值调用......................................................................................................... 111
    7.4.3 按地址传送方式传递数据........................................................................................ 112
    7.5 函数的嵌套与递归调用................................................................................................ 113
    7.5.1 函数的嵌套调用......................................................................................................... 113
    7.5.2 函数的递归调用......................................................................................................... 114
    7.6 数组与函数参数........................................................................................................... 115
    4
    C 语言程序设计
    7.6.1 数组元素作为函数实参............................................................................................. 115
    7.6.2 数组名作为函数参数................................................................................................. 115
    7.6.3 多维数组名作为函数参数........................................................................................ 116
    7.7 变量的作用域............................................................................................................... 117
    7.7.1 局部变量..................................................................................................................... 117
    7.7.2 全局变量..................................................................................................................... 118
    7.8 变量的存储类型........................................................................................................... 119
    7.8.1 自动变量..................................................................................................................... 120
    7.8.2 静态变量..................................................................................................................... 121
    7.8.3 寄存器变量................................................................................................................. 123
    7.8.4 外部变量..................................................................................................................... 123
    7.9 内部函数与外部函数.................................................................................................... 125
    7.9.1 内部函数..................................................................................................................... 125
    7.9.2 外部函数..................................................................................................................... 125
    7.10 典型例题..................................................................................................................... 126
    7.11 上机实验..................................................................................................................... 129
    习题7 .................................................................................................................................... 131
    第8章 指针.......................................................................................................................... 136
    8.1 指针与指针变量........................................................................................................... 136
    8.1.1 地址与指针的概念..................................................................................................... 136
    8.1.2 指针变量..................................................................................................................... 137
    8.1.3 指针运算..................................................................................................................... 138
    8.1.4 二级指针..................................................................................................................... 139
    8.2 指针与数组................................................................................................................... 140
    8.2.1 指向一维数组的指针................................................................................................. 140
    8.2.2 指向多维数组的指针................................................................................................. 141
    8.2.3 指向字符串的指针..................................................................................................... 143
    8.2.4 指针数组..................................................................................................................... 144
    8.3 指针与函数................................................................................................................... 145
    8.3.1 指针变量作为函数参数............................................................................................. 146
    8.3.2 指向函数的指针......................................................................................................... 147
    8.3.3 返回值为指针的函数................................................................................................. 149
    8.4 带参数的主函数........................................................................................................... 150
    8.5 用指针实现内存动态分配............................................................................................ 151
    8.6 典型例题....................................................................................................................... 152
    8.7 上机实验....................................................................................................................... 156
    习题8 .................................................................................................................................... 158
    第9章 结构体与共用体........................................................................................................ 163
    9.1 结构体类型................................................................................................................... 163
    9.1.1 结构体类型定义......................................................................................................... 163
    5
    目 录
    9.1.2 结构体类型变量的定义............................................................................................. 164
    9.1.3 结构体变量的引用..................................................................................................... 165
    9.1.4 结构体变量的初始化................................................................................................. 166
    9.1.5 结构体变量的赋值..................................................................................................... 166
    9.2 结构体数组................................................................................................................... 167
    9.2.1 结构体数组的定义..................................................................................................... 167
    9.2.2 结构体数组的初始化................................................................................................. 167
    9.3 结构体和指针............................................................................................................... 168
    9.3.1 指向结构体变量的指针............................................................................................. 168
    9.3.2 指向结构体数组的指针............................................................................................. 169
    9.4 结构体和函数............................................................................................................... 170
    9.4.1 结构体变量作为函数参数........................................................................................ 170
    9.4.2 指向结构体变量的指针作为函数参数.................................................................... 170
    9.4.3 返回结构体数据的函数............................................................................................. 171
    9.4.4 返回结构体指针的函数............................................................................................. 172
    9.5 共用体........................................................................................................................... 172
    9.5.1 共用体类型的定义..................................................................................................... 172
    9.5.2 共用体类型变量的定义............................................................................................. 173
    9.5.3 共用体变量的引用..................................................................................................... 173
    9.6 枚举类型....................................................................................................................... 174
    9.6.1 枚举类型的定义......................................................................................................... 174
    9.6.2 枚举变量的定义......................................................................................................... 174
    9.6.3 枚举变量的使用......................................................................................................... 175
    9.7 用typedef定义类型...................................................................................................... 176
    9.8 单链表........................................................................................................................... 176
    9.9 典型例题....................................................................................................................... 180
    9.10 上机实验..................................................................................................................... 182
    习题9 .................................................................................................................................... 184
    第10章 编译预处理............................................................................................................. 190
    10.1 宏定义......................................................................................................................... 190
    10.1.1 不带参数的宏定义................................................................................................... 190
    10.1.2 带参数的宏定义....................................................................................................... 192
    10.1.3 终止宏定义............................................................................................................... 193
    10.2 文件包含..................................................................................................................... 193
    10.3 条件编译..................................................................................................................... 194
    10.4 典型例题..................................................................................................................... 197
    10.5 上机实验..................................................................................................................... 198
    习题10 .................................................................................................................................. 199
    第11章 文件........................................................................................................................ 201
    11.1 文件的基本概念.......................................................................................................... 201
    6
    C 语言程序设计
    11.1.1 文件与文件名........................................................................................................... 201
    11.1.2 文件的分类............................................................................................................... 201
    11.1.3 文件指针................................................................................................................... 202
    11.1.4 ANSI C的缓冲文件系统......................................................................................... 203
    11.2 文件的打开与关闭...................................................................................................... 203
    11.2.1 文件打开函数fopen()............................................................................................... 203
    11.2.2 文件关闭函数fclose() .............................................................................................. 204
    11.3 文件的读写操作.......................................................................................................... 204
    11.3.1 字符读写函数fgetc()和fputc()................................................................................. 204
    11.3.2 字符串读写函数fgets()和fputs() ............................................................................. 206
    11.3.3 数据块读写函数fread()和fwrite() ........................................................................... 207
    11.3.4 格式化读写函数fscanf()和fprintf() ......................................................................... 208
    11.4 文件检测函数............................................................................................................. 209
    11.4.1 文件结束检测函数feof().......................................................................................... 209
    11.4.2 读写文件出错检测函数ferror()............................................................................... 210
    11.4.3 文件出错标志和文件结束标志置0函数clearerr() .............................................. 210
    11.5 位置指针与文件定位.................................................................................................. 211
    11.5.1 位置指针复位函数rewind()..................................................................................... 212
    11.5.2 随机读写函数fseek() ............................................................................................... 212
    11.5.3 返回文件当前位置函数ftell() ................................................................................. 213
    11.6 典型例题..................................................................................................................... 214
    11.7 上机实验..................................................................................................................... 217
    习题11 .................................................................................................................................. 218
    第12章 常用算法与C程序设计举例................................................................................... 222
    12.1 常用算法..................................................................................................................... 222
    12.1.1 二分法....................................................................................................................... 222
    12.1.2 迭代法....................................................................................................................... 223
    12.1.3 穷举法....................................................................................................................... 224
    12.1.4 递推法....................................................................................................................... 224
    12.1.5 递归法....................................................................................................................... 225
    12.1.6 回溯法....................................................................................................................... 226
    12.2 C程序设计举例.......................................................................................................... 227
    12.2.1 学生成绩管理系统................................................................................................... 227
    12.2.2 通讯录管理系统....................................................................................................... 234
    附录....................................................................................................................................... 239
    附录A 常用字符与ASCII代码对照表...................................................................................... 239
    附录B C语言常用库函数........................................................................................................... 240
    参考文献................................................................................................................................ 243
  • 作者介绍

    徐凤生,硕士,教授,1982.9-1986.6,聊城师范学院数学专业学习;1989.9-1992.6,北京师范大学数学系研究生。1986.9-1989.8,1992.9-2009.12,在德州学院数学系、计算机系任教;2010.1-至今,在德州学院数学科学学院任教。主持省自然科学基金项目1项,主研省级以上科研课题3项,主持市厅级课题4项,在核心以上期刊发表论文50多篇,其中SCI检索2篇、EI检索8篇,获市厅级以上科研奖励10多项,现为校级学术骨干。主持或主研省级以上教研课题4项,主编教材4部,副主编教材3部,参编教材2部,获省级教学成果三等奖2项,主持省级精品课程2门、省级教学团队1个,现为校级教学名师。黄超,枣庄学院信息科学与工程学院副院长,主教计算机应用基础,C语言程序设计,多媒体技术等课程,发表论文多篇,主编或参编教材多部。谢玉华,女,31岁。1998年毕业于山东师范大学教育技术学专业,现在职就读山东科技大学计算机软件与理论专业研究生。 主讲课程:C 程序设计 计算机辅助教育 网络教育应用 VFP程 序设计 科研成果:滨州学院学报发表论文2篇 参编教材一部《现代教 育技术》石油大学出版社出版。研究方向:数据库系统,计算机辅助教育。
  • 编辑推荐

  • 书评书荐

  • 附件下载

图书推荐