华信教育资源网
C语言程序设计(第2版)
丛   书   名: 普通高等教育“十三五”规划教材  新工科建设之路·计算机类规划教材
作   译   者:蔺德军、张云红 出 版 日 期:2020-04-01
出   版   社:电子工业出版社 维   护   人:戴晨辰 
书   代   号:G0379530 I S B N:9787121379536

图书简介:

本书立足于作者近20年的C语言教学经验编写而成,共14章,内容包括概述,数据类型与输入/输出,运算符与表达式,算法与结构化程序设计,选择结构程序设计,循环结构程序设计,数组与字符串,指针,函数,结构体、共用体、枚举、链表,编译预处理,文件,用C语言构造简单数据结构(选学),发展与规范(选学)。全书内容经过精心筛选,按照理解顺序组织,追求由浅入深、步步提高。除涵盖C语言的语法知识外,本书还专门增加了用C语言构造队列、栈、树等实用的数据结构及其相应的常用算法。在第14章中用一个较简单实用的案例解释读者的困惑:与C语言相比,C++增加了什么。本书配有《C语言程序设计上机实验与习题解答》(第2版)(ISBN 978-7-121-37954-3)。此外,本书配套程序源代码、PPT课件、动画演示视频、实验自动阅卷系统等资源,读者可登录华信教育资源网(www.hxedu.com.cn)免费下载。本书特别适合作为大学C语言课程的教材及相关爱好者的自学教材,也适合作为二级C语言考试的参考用书。
定价 58.0
您的专属联系人更多
关注 评论(0) 分享
配套资源 图书内容 样章/电子教材 图书评价
  • 配 套 资 源
    图书特别说明:若需获取本书其他配套资源,请联系dcc@phei.com.cn。

    本书资源

    会员上传本书资源

  • 图 书 内 容

    内容简介

    本书立足于作者近20年的C语言教学经验编写而成,共14章,内容包括概述,数据类型与输入/输出,运算符与表达式,算法与结构化程序设计,选择结构程序设计,循环结构程序设计,数组与字符串,指针,函数,结构体、共用体、枚举、链表,编译预处理,文件,用C语言构造简单数据结构(选学),发展与规范(选学)。全书内容经过精心筛选,按照理解顺序组织,追求由浅入深、步步提高。除涵盖C语言的语法知识外,本书还专门增加了用C语言构造队列、栈、树等实用的数据结构及其相应的常用算法。在第14章中用一个较简单实用的案例解释读者的困惑:与C语言相比,C++增加了什么。本书配有《C语言程序设计上机实验与习题解答》(第2版)(ISBN 978-7-121-37954-3)。此外,本书配套程序源代码、PPT课件、动画演示视频、实验自动阅卷系统等资源,读者可登录华信教育资源网(www.hxedu.com.cn)免费下载。本书特别适合作为大学C语言课程的教材及相关爱好者的自学教材,也适合作为二级C语言考试的参考用书。

    图书详情

    ISBN:9787121379536
    开 本:16开
    页 数:308
    字 数:493

    本书目录

    第1章  概述 1
    1.1  程序设计语言 1
    1.1.1  程序设计语言的概念 1
    1.1.2  程序设计语言的发展 1
    1.1.3  程序设计的一般步骤 3
    1.2  C语言的发展历史和特点 3
    1.2.1  C语言的发展历史 3
    1.2.2  C语言的特点 4
    1.3  第1个C语言程序 5
    1.3.1  必要的计算机基础知识——初识内存 5
    1.3.2  一个C语言程序从编写到执行的过程 6
    1.3.3  使用VC++ 6.0调试程序 6
    1.3.4  使用VC++ 2010调试程序 10
    1.3.5  编译时常见错误 13
    1.3.6  链接时常见错误 13
    1.3.7  执行时常见错误 14
    1.4  C语言程序结构与注意事项 15
    1.5  本章小结 17
    习题1 17
    第2章  数据类型与输入/输出 18
    2.1  变量与常量 18
    2.2  常量的表示 19
    2.2.1  C语言的基本数据类型 19
    2.2.2  常量表示一览表 19
    2.2.3  字符常量 20
    2.2.4  整型常量 21
    2.2.5  浮点型常量 22
    2.2.6  双精度型常量 22
    2.2.7  字符串常量 22
    2.3  简单变量类型 23
    2.3.1  标识符的要求 23
    2.3.2  字符变量、整型变量 24
    2.3.3  浮点型变量、双精度型变量 27
    2.4  输入/输出 30
    2.4.1  getchar()与putchar()函数 30
    2.4.2  printf()函数 31
    2.4.3  scanf()函数 34
    2.5  本章小结 37
    习题2 38
    第3章  运算符与表达式 41
    3.1  表达式 41
    3.2  优先级与结合方向 41
    3.3  基本算术运算符 42
    3.4  自增、自减运算符 43
    3.5  赋值运算符 45
    3.6  关系运算符 46
    3.7  逻辑运算符 47
    3.8  条件运算符 48
    3.9  逗号运算符 49
    3.10  位逻辑运算符 51
    3.11  移位运算符 52
    3.12  复合运算符 54
    3.13  类型转换与混合运算 54
    3.14  其他运算符 56
    3.15  运算符的优先级与结合性一览表 57
    3.16  常用数学函数 58
    3.17  本章小结 59
    习题3 59
    第4章  算法与结构化程序设计 65
    4.1  算法及其表示 65
    4.1.1  算法的概念 65
    4.1.2  算法的特征 65
    4.1.3  算法的描述方法 67
    4.2  结构化程序设计 68
    4.2.1  C语言语句综述 68
    4.2.2  goto语句 69
    4.2.3  软件危机与结构化程序设计的提出 70
    4.2.4  结构化程序设计的核心思想 71
    4.2.5  三种基本程序结构的N-S图 73
    4.3  顺序结构程序设计 74
    4.3.1  顺序结构的含义 74
    4.3.2  顺序结构程序设计示例 74
    4.4  程序调试 75
    4.5  本章小结 77
    习题4 77
    第5章  选择结构程序设计 79
    5.1  if语句 79
    5.1.1  if语句的格式 79
    5.1.2  if语句的注意事项 80
    5.1.3  程序示例 80
    5.2  if-else语句 82
    5.2.1  if-else语句的格式 82
    5.2.2  if-else语句的注意事项 83
    5.2.3  缩进结构的书写方式 84
    5.2.4  if-else-if语句 86
    5.3  switch语句 88
    5.3.1  switch语句的格式 88
    5.3.2  switch语句的流程图及N-S图 91
    5.3.3  switch语句的注意事项 93
    5.4  本章小结 93
    习题5 93
    第6章  循环结构程序设计 98
    6.1  循环结构概述 98
    6.2  while语句 98
    6.3  for语句 100
    6.3.1  for语句的格式 100
    6.3.2  for语句的注意事项 102
    6.4  do语句 102
    6.5  break语句与continue语句 104
    6.5.1  break语句 104
    6.5.2  continue语句 105
    6.5.3  break语句与continue语句的替代方法 107
    6.6  循环嵌套 108
    6.7  常见循环类问题 109
    6.8  本章小结 114
    习题6 115
    第7章  数组与字符串 119
    7.1  数组的声明与存储 119
    7.1.1  数组的声明与使用 119
    7.1.2  数组的存储及数组名中存储的内容 121
    7.1.3  数组的初始化 123
    7.1.4  使用随机数函数 126
    7.2  数组的常用操作 127
    7.2.1  查找最大值、最小值 127
    7.2.2  排序 128
    7.2.3  插入/删除元素 130
    7.2.4  查找 131
    7.3  字符数组与字符串 132
    7.3.1  字符数组 132
    7.3.2  字符串 133
    7.3.3  字符串的输入/输出 134
    7.3.4  字符串的常用处理函数 136
    7.4  程序设计示例 138
    7.5  本章小结 140
    习题7 140
    第8章  指针 144
    8.1  指针的含义与使用 144
    8.1.1  指针与目标单元 145
    8.1.2  指针的声明与初始化 145
    8.1.3  指针的注意事项 146
    8.1.4  指针的使用 147
    8.2  指针与一维数组 147
    8.3  动态内存分配 152
    8.4  复杂指针 154
    8.4.1  数组指针及多维数组指针 154
    8.4.2  指针数组 157
    8.4.3  二级指针 159
    8.4.4  数组指针数组 161
    8.4.5  三级指针与多级指针 161
    8.4.6  指针归纳 162
    8.5  本章小结 163
    习题8 163
    第9章  函数 166
    9.1  函数功能 166
    9.2  函数的定义与使用 167
    9.2.1  函数的定义与调用格式 167
    9.2.2  函数的定义与调用注意事项 168
    9.2.3  定义一个函数的步骤 169
    9.2.4  函数声明与头文件 169
    9.2.5  函数的调用与返回 171
    9.3  简单参数传递 172
    9.3.1  值的传递 172
    9.3.2  变量地址的传递 173
    9.3.3  参数的处理次序 175
    9.4  变量的作用域 176
    9.4.1  不同变量的作用域 176
    9.4.2  extern关键字 178
    9.5  传递数组作为参数 179
    9.5.1  传递一维数组 179
    9.5.2  传递多维数组 181
    9.5.3  传递指针数组 183
    9.5.4  const关键字 184
    9.6  变量的存储类型 185
    9.7  递归 188
    9.8  函数指针 191
    9.9  主函数的参数 193
    9.10  本章小结 194
    习题9 194
    第10章  结构体、共用体、枚举、链表 200
    10.1  结构体 200
    10.1.1  结构体的定义 200
    10.1.2  关键字typedef的用法 201
    10.1.3  结构体变量的定义与初始化 202
    10.1.4  结构体与函数 208
    10.2  共用体 209
    10.3  枚举 211
    10.3.1  枚举的定义和枚举变量的声明 211
    10.3.2  枚举变量的赋值和使用 212
    10.4  链表 213
    10.4.1  链表的定义 213
    10.4.2  链表的建立与遍历 214
    10.4.3  链表节点的插入、删除操作 217
    10.4.4  完整程序示例 220
    10.5  本章小结 221
    习题10 222
    第11章  编译预处理 229
    11.1  宏定义 229
    11.1.1  不带参数的宏定义 229
    11.1.2  带参数的宏定义 231
    11.1.3  #undef 233
    11.2  文件包含 233
    11.3  条件编译 234
    11.4  本章小结 238
    习题11 239
    第12章  文件 241
    12.1  文件类型 241
    12.2  文件的打开与关闭 242
    12.2.1  文件的打开 242
    12.2.2  文件的关闭 244
    12.3  文件的读/写 244
    12.3.1  如何判断文件结束 245
    12.3.2  fgetc()、fputc()函数 245
    12.3.3  fscanf()、fprintf()函数 247
    12.3.4  fgets()、fputs()函数 250
    12.3.5  fread()、fwrite()函数 251
    12.4  文件指针的移动 253
    12.4.1  rewind()函数 253
    12.4.2  fseek()、ftell()函数 253
    12.4.3  随机读/写 254
    12.5  本章小结 255
    习题12 256
    第13章  用C语言构造简单数据结构(选学) 261
    13.1  数据结构概述 261
    13.1.1  基本概念 261
    13.1.2  数据的逻辑结构 261
    13.1.3  数据的存储结构 262
    13.2  算法复杂度 262
    13.2.1  算法的时间复杂度 262
    13.2.2  算法的空间复杂度 263
    13.3  队列 263
    13.4  栈 266
    13.5  树 268
    13.5.1  树的基本概念 268
    13.5.2  二叉树的基本概念 268
    13.5.3  二叉树的遍历 269
    第14章  发展与规范(选学) 272
    14.1  认识C++ 272
    14.2  C语言标准 274
    二级C语言笔试真题及答案(一) 276
    二级C语言笔试真题及答案(二) 286
    附录A  ASCII码 296
    附录B  stdio.h中的常用函数 297
    附录C  stdlib.h中的常用函数 298
    附录D  string.h中的常用函数 299
    附录E  math.h中的常用函数 300
    展开

    前     言

    现今已经进入信息时代,计算机以各种不同的外形遍布生活的各个角落,大的占据几百平方米面积,小的装入了人们的口袋。工业时期,人们从体力劳动中解放出来。有了计算机后,人们又从简单重复的脑力劳动中解放出来,由计算机代劳完成枯燥的重复劳动。计算机需要人用程序控制它一步步地完成工作,人的工作可简化成两种:设计软件和使用软件。因此,对目前的学生来说,学会软件编程十分重要。
    计算机语言是生产计算机软件的工具,在诸多的计算机语言中,许多语言产生后逐渐衰落,甚至被淘汰。而在1973年诞生的C语言仍是无法被替代的计算机语言,在计算机语言使用率排行榜上始终居于前三名的位置。C语言既具有高级语言简洁、高效、功能强大的特点,又具有低级语言直接操纵硬件的能力。由于C语言有其他语言不具备的内存、物理设备访问能力,因此C语言一直是控制软件和系统软件开发的首选语言。其应用领域也在不断延伸,从操作系统到游戏软件,从控制软件到管理软件,从UNIX环境下的编程到Windows环境下的编程,无不体现着C语言的强大优势。C++仅仅是C语言的延伸,在C语言的基础上增加了对象和类,而构造类使用的仍然是C语言的语句。
    有些语言,如Java、JSP、PHP等沿袭了C语言的基本语句语法,若学会了C语言,则可以较容易地读懂用这几种语言编写的程序。因此,从C语言开始学习编写程序是一个不错的选择。
    现在,市面上某些教材的内容很完整,语言描述得非常准确,让人找不出任何疏漏,但是对于学习者而言,却很难看懂。本书定位于易学、易懂,而不是内容的堆砌,更不是C语言标准的官方文档,而是立足于作者近20年的C语言教学经验,遵循学生的理解次序编写的。书中包含图示、比喻及配套动画演示,目标是让学生既能轻松入门,又能在日常的基础学习中达到一定的高度,学完后能达到国家二级C语言考试的水平。
    本书配有《C语言程序设计上机实验与习题解答》(第2版)(ISBN 978-7-121-37954-3)。此外,本书配套程序源代码、PPT课件、动画演示视频、实验自动阅卷系统等资源,读者可登录华信教育资源网(www.hxedu.com.cn)免费下载。
    本书由姜彬完成第1、2章的编写,由张云红完成第4、5、6章的编写,由刘晓洁完成第9、10章的编写,由郑世秀完成第7、11章的编写,由蔺德军负责内容总体安排及完成第8、12、13章的编写,由臧嵘完成第3章的编写,由杨金宝完成第14章的编写,由朱威同、姜山完成习题、附录的编写。在再版过程中,由茹俊丽、臧嵘、杨金宝负责全书修订工作。在本书的编写过程中,得到了C语言教学领域的资深教师贾小珠、高长铎、夏方遒、侯东昌、赵希梅、刘堃、孙林学、强文萍的精心指导与大力支持,在此表示感谢。
    本书的编写力求叙述准确、内容完整,讲解过程由浅入深、循序渐进,使学生容易理解和学习,但限于编者水平和时间的限制,书中难免存在缺点和错误,恳请专家和读者批评指正。
                                                                  编  者 

    展开

    作者简介

    本书暂无作者简介
  • 样 章 试 读
  • 图 书 评 价 我要评论
华信教育资源网