华信教育资源网
C语言程序设计
作   译   者:蔺德军,张云红 出 版 日 期:2015-11-01
出   版   社:电子工业出版社 维   护   人:戴晨辰 
书   代   号:G0274220 I S B N:9787121274220

图书简介:

本书是立足于近20年C语言教学经验编写的教材,共14章,内容包括:C语言概述,数据类型与输入输出,运算符与表达式,算法与结构化程序设计,选择结构程序设计,循环结构程序设计,数组与字符串,指针,函数,结构体、联合体、枚举、链表,编译预处理,文件,用C语言构造简单数据结构,C语言发展与规范。全书内容经过精心筛选,按照理解顺序来组织,追求由浅入深,步步提高。除涵盖了C语言的语法知识外,还专门增加了用C语言构造队列、栈、二叉树等实用的数据结构及其相应的常用算法,在本书的末尾用一个较简单实用的案例解释很多学习C语言读者的困惑“与C语言相比较,C++是什么”。本书配有《C语言程序设计上机实验与习题解答》(ISBN 978-7-121-27423-7)。此外,程序示例、PPT课件、动画演示等免费提供给任课教师备课参考。
定价 38.5
您的专属联系人更多
配套资源 图书内容 样章/电子教材 图书评价
  • 配 套 资 源

    本书资源

    本书暂无资源

    会员上传本书资源

  • 图 书 内 容

    内容简介

    本书是立足于近20年C语言教学经验编写的教材,共14章,内容包括:C语言概述,数据类型与输入输出,运算符与表达式,算法与结构化程序设计,选择结构程序设计,循环结构程序设计,数组与字符串,指针,函数,结构体、联合体、枚举、链表,编译预处理,文件,用C语言构造简单数据结构,C语言发展与规范。全书内容经过精心筛选,按照理解顺序来组织,追求由浅入深,步步提高。除涵盖了C语言的语法知识外,还专门增加了用C语言构造队列、栈、二叉树等实用的数据结构及其相应的常用算法,在本书的末尾用一个较简单实用的案例解释很多学习C语言读者的困惑“与C语言相比较,C++是什么”。本书配有《C语言程序设计上机实验与习题解答》(ISBN 978-7-121-27423-7)。此外,程序示例、PPT课件、动画演示等免费提供给任课教师备课参考。

    图书详情

    ISBN:9787121274220
    开 本:16开
    页 数:288
    字 数:460

    本书目录

    目    录 
    第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  第一个C语言程序	5
    1.3.1  必要的计算机基础——
          初识内存	5
    1.3.2  一个C语言程序从编写到执行
          的过程	5
    1.3.3  使用VC++ 6.0环境调试程序	6
    1.3.4  编译时常见错误	10
    1.3.5  链接时常见错误	10
    1.4  C语言程序结构与注意事项	11
    1.5  本章小结	13
    习题1	14
    第2章  数据类型与输入输出	15
    2.1  变量与常量	15
    2.2  常量的表示	16
    2.2.1  C语言的基本数据类型	16
    2.2.2  常量表示一览表	16
    2.2.3  字符常量	17
    2.2.4  整型常量	18
    2.2.5  浮点型常量	19
    2.2.6  双精度常量	19
    2.2.7  字符串常量	19
    2.3  简单变量类型	20
    2.3.1  标识符要求	20
    2.3.2  字符型、整型变量	21
    2.3.3  浮点型、双精度变量	23
    2.4  输入/输出	25
    2.4.1  getchar与putchar函数	26
    2.4.2  printf()函数	27
    2.4.3  scanf()函数	29
    2.5  本章小结	32
    习题2	33
    第3章  运算符与表达式	35
    3.1  表达式	35
    3.2  优先级与结合方向	35
    3.3  基本算术运算符	36
    3.4  自增、自减运算符	37
    3.5  赋值运算	39
    3.6  关系运算	40
    3.7  逻辑运算	41
    3.8  条件运算	43
    3.9  逗号运算	43
    3.10  位逻辑运算	45
    3.11  移位运算	46
    3.12  复合运算符	48
    3.13  类型转换与混合运算	48
    3.14  其他运算符	50
    3.15  运算符的优先级与结合方向
          一览表	51
    3.16  常用数学函数简介	52
    3.17  本章小结	53
    习题3	53
    第4章  算法与结构化程序设计	58
    4.1  算法及其表示	58
    4.1.1  算法的概念	58
    4.1.2  算法的特征	58
    4.1.3  算法的描述方法	60
    4.2  结构化程序设计	62
    4.2.1  C语句综述	62
    4.2.2  goto语句	63
    4.2.3  软件危机与结构化程序设计
          的提出	64
    4.2.4  结构化程序设计的核心思想	64
    4.2.5  三种基本程序结构的N-S图	66
    4.3  顺序结构程序设计	67
    4.3.1  顺序结构的含义	67
    4.3.2  顺序结构程序设计举例	67
    4.4  程序调试	69
    4.5  本章小结	70
    习题4	70
    第5章  选择结构程序设计	72
    5.1  if语句	72
    5.1.1  if语句基本格式	72
    5.1.2  书写if语句时的注意事项	73
    5.1.3  程序实例	73
    5.2  if-else语句	75
    5.2.1  语句格式	75
    5.2.2  使用if-else的注意事项	76
    5.2.3  缩进结构的书写方式	77
    5.2.4  if else语句的嵌套	79
    5.2.5  if-else-if语句	79
    5.3  switch语句	81
    5.3.1  switch语句格式	81
    5.3.2  switch语句的流程图及
          N-S图	84
    5.3.3  使用switch语句应注意的
          问题	84
    5.4  本章小结	85
    习题5	85
    第6章  循环结构程序设计	89
    6.1  循环概述	89
    6.2  while循环	89
    6.3  for循环	91
    6.3.1  for循环执行流程	91
    6.3.2  for循环注意事项	93
    6.4  do循环	94
    6.5  continue与break	96
    6.5.1  break语句	96
    6.5.2  continue语句	97
    6.5.3  continue与break的替代
          方法	98
    6.6  循环嵌套	99
    6.7  常见循环类问题举例	100
    6.8  本章小结	106
    习题6	106
    第7章  数组与字符串	110
    7.1  数组声明与存储	110
    7.1.1  数组的声明与使用	110
    7.1.2  数组的存储及数组名中储存
          的内容	112
    7.1.3  数组的初始化	114
    7.1.4  使用随机数函数	117
    7.2  数组常用操作	118
    7.2.1  查找最大值、最小值	118
    7.2.2  排序	119
    7.2.3  插入/删除元素	122
    7.2.4  查找	123
    7.3  字符数组与字符串	124
    7.3.1  字符数组	124
    7.3.2  字符串	124
    7.3.3  字符串的输入输出	126
    7.3.4  字符串的常用处理函数	128
    7.4  程序设计举例	130
    7.5  本章小结	131
    习题7	132
    第8章  指针	135
    8.1  指针的含义与使用	135
    8.1.1  指针与目标单元	136
    8.1.2  指针的声明与初始化	137
    8.1.3  使用指针注意事项	137
    8.1.4  指针的使用	138
    8.2  指针与一维数组	139
    8.3  动态内存分配	144
    8.4  复杂指针	146
    8.4.1  二维数组中的地址与数组
          指针	146
    8.4.2  指针数组	148
    8.4.3  指针的指针	149
    8.4.4  指针归纳	151
    8.5  本章小结	152
    习题8	152
    第9章  函数	155
    9.1  函数功能	155
    9.2  函数的定义与使用	156
    9.2.1  函数定义与调用的格式	156
    9.2.2  函数的定义与调用注意事项	157
    9.2.3  定义一个函数的步骤	158
    9.2.4  函数预声明与头文件	158
    9.2.5  函数的调用和返回	160
    9.3  简单参数传递	162
    9.3.1  值的传递	162
    9.3.2  变量地址的传递	163
    9.3.3  参数的处理次序	165
    9.4  变量的作用域	166
    9.4.1  不同变量的作用域	166
    9.4.2  extern关键字	168
    9.5  传递数组作为参数	168
    9.5.1  传递一维数组	168
    9.5.2  传递二维数组	171
    9.5.3  传递指针数组	171
    9.5.4  const关键字	173
    9.6  变量存储类型	174
    9.7  递归	177
    9.8  函数指针	179
    9.9  主函数的参数	180
    9.10  本章小结	182
    习题9	182
    第10章  结构体、联合体、枚举、
               链表	186
    10.1  结构体	186
    10.1.1  结构体类型的定义	186
    10.1.2  关键字typedef的用法	187
    10.1.3  结构体变量的定义与
           初始化	188
    10.1.4  结构体与函数	193
    10.2  联合体(共用体)	195
    10.3  枚举	197
    10.3.1  枚举类型的定义和枚举变量
           的声明	197
    10.3.2  枚举类型变量的赋值和
           使用	198
    10.4  链表	199
    10.4.1  链表的定义	199
    10.4.2  动态链表的建立与遍历	200
    10.4.3  链表节点的插入、删除
           操作	203
    10.4.4  完整代码	205
    10.5  本章小结	207
    习题10	208
    第11章  编译预处理	213
    11.1  宏定义	213
    11.1.1  不带参数的宏定义	213
    11.1.2  带参数的宏定义	215
    11.1.3  #undef	217
    11.2  文件包含	217
    11.3  条件定义与条件编译	218
    11.4  本章小结	221
    习题11	221
    第12章  文件	224
    12.1  文件类型	224
    12.2  文件的打开与关闭	225
    12.2.1  文件处理三部曲	225
    12.2.2  打开文件	225
    12.2.3  文件关闭	227
    12.3  文件的读写	227
    12.3.1  如何判断文件结束	228
    12.3.2  fgetc、fputc函数	228
    12.3.3  fscanf、fprintf函数	231
    12.3.4  fgets、fputs函数	234
    12.3.5  fread、fwrite函数	235
    12.4  文件指针的移动	236
    12.4.1  rewind函数	236
    12.4.2  fseek、ftell函数	236
    12.4.3  随机读写	237
    12.5  本章小结	238
    习题12	239
    第13章  用C语言构造简单数据结构
             (选学)	242
    13.1  数据结构基本概念	242
    13.1.1  基本概念	242
    13.1.2  数据的逻辑结构	242
    13.1.3  数据的存储结构	243
    13.2  算法复杂度	243
    13.2.1  算法的时间复杂度	243
    13.2.2  算法的空间复杂度	244
    13.3  队列	244
    13.4  栈	247
    13.5  树	248
    13.5.1  树的基本概念	248
    13.5.2  二叉树及其基本性质	249
    13.5.3  二叉树的遍历	250
    第14章  发展与规范(选学)	252
    14.1  认识C++	252
    14.2  C语言标准	254
    2009年9月二级C语言笔试真题及
    答案	256
    2009年3月二级C语言笔试真题及
    答案	266
    附录	276
    附录A  ASCII表	276
    附录B  stdio.h中的常用函数	277
    附录C  stdlib.h中的常用函数	278
    附录D  string.h中的常用函数	279
    附录E  math.h中的常用函数	280
    展开

    前     言

    前    言
    现今已经进入信息时代,计算机以各种不同的外形遍布生活的各个角落,大的占据几百平方面积,小的装入了人们的口袋,更小的可以植入人的眼球。工业时期,人们从体力劳动中解放出来,有了计算机后,人们又从简单重复的脑力劳动中解放出来,由计算机代劳完成枯燥的重复劳动,计算机是需要人们用程序去控制它一步步完成工作的,人类的工作则简化成两种,设计软件和使用软件,因此,对当代的学生来说,学会软件编程才能真正理解这个时代,也才能真正投入到这个社会大环境中。
    计算机语言是生产计算机软件的工具,在诸多的计算机语言中,许多语言产生后逐渐衰落甚至被淘汰。而1973年诞生的C语言始终是无法被替代的计算机编程语言,在计算机语言使用率排行榜上始终居于前三名的位置,C语言既具有高级语言简洁、高效、功能强大的特点,又具有低级语言直接操纵硬件的能力,C语言有其他语言不具备的内存、物理设备访问能力,因此C语言一直是控制软件和系统软件开发的首选语言,它的编程领域也在不断延伸,从操作系统到游戏软件,从控制软件到管理软件,从UNIX环境下的编程到Windows环境下的编程,无不体现着C语言的强大优势,没有哪种语言能代替C语言。而C++仅仅是C语言的延伸,在C语言的基础上增加了对象和类,而构造类使用的仍然是C语言的语句。
    有些语言,例如Java、jsp、php等语言沿袭了C语言的基本语句语法,如果学会了C语言也可以较容易地读懂这几种语言编写的程序,而面向对象的编程,从C++中理解对象和类可以说是最准确的,所以学习编程,从C语言开始学习是一个不错的选择。
    这是一本通俗易懂的书,书中内容是按照理解的次序编写的,现在市面上有很多教材,内容很完整,语言描述非常准确,让人找不出任何疏漏,严谨的像法律的条文规定,但是对于学习者而言,却很难看懂,这种书能起的作用是非常有限的,本教材定位于自学、易懂,本教材不是内容的堆砌,更不是写C语言标准的官方文档,而是立足于20年C语言教学的经验,遵照学生的理解次序,编写的一本教材,里面有大量的图示、比喻,甚至有配套动画演示,目标就是让读者轻松入门,在平稳的深入中,又能达到一定高度,学完后能达到国家C语言二级考试的水平。本书好比一潭水,水很清澈,很容易看懂,但是,最终你会发现,水很深。
    本书编写过程中,得到了C语言教学领域的资深教师贾小珠、高长铎、夏方遒、侯东昌、赵希梅、刘堃老师的精心指导与大力支持,在此表示感谢,教材编写过程中尽管力求叙述准确,内容完整,讲解过程也尽可能地由浅入深,循序渐进,使同学容易理解和学习,但限于水平和时间的限制,书中难免存在缺点和错误,恳请众多专家和读者批评指正。谢谢!
    
                                                                  编  者   
                                                              2015年8月
    展开

    作者简介

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