C语言程序设计

-
【作 者】姜雪
【I S B N 】978-7-5226-1406-9
【责任编辑】
【适用读者群】本专通用
【出版时间】2023-03-10
【开 本】16开
【装帧信息】平装(光膜)
【版 次】第1版第1次印刷
【页 数】236
【千字数】378
【印 张】14.75
【定 价】¥48
【丛 书】普通高等教育计算机类专业教材
【备注信息】
简介
本书特色
前言
章节列表
精彩阅读
下载资源
相关图书
本书是C语言程序设计课程的入门教材,旨在培养学生的程序设计基本能力。
本书以Microsoft Visual C++ 2010集成开发环境为基础,全面介绍了C语言的基本语法知识及运用C语言进行程序设计的相关内容,既阐述了相关概念,又重点讲解了程序设计的思想和方法。在内容编排上,本书力求通俗易懂,循序渐进,重点突出。为了使读者更好地掌握各章节知识,提高逻辑分析和程序设计能力,每章末均配有精选的习题。
本书中的程序均按照模块化设计思想进行编写,并辅以必要的注释,便于读者对程序的理解、分析和自学。书中涉及的所有程序已在Microsoft Visual C++ 2010集成开发环境中调试和运行,程序算法采用N-S图描述。
本书既可作为普通高等院校各专业“C语言程序设计”课程的教学用书,也可作为C语言初学者和相关培训机构、等级考试的参考书或培训教材。
内容实用: 包含丰富例题和课后习题,着重培养逻辑分析和程序设计能力。
结构紧密: 针对C 语言特点设计课程理论体系,各章节模块之间紧密衔接。
循序渐进 : 从零起点开始,由浅入深安排知识点层次,逐步提升案例难度。
C语言是一种结构化程序设计语言,它兼有高级语言的特点和低级语言的功能,代码简洁、高效,功能强大,既可用于编写系统软件,也可用于编写应用软件。从实用性、易用性和学习的难易程度等角度看,C语言是不可多得的计算机高级语言,故C语言程序设计也是大部分高校计算机及相关专业的必修课程。
本书共分为10章。第1章主要介绍C语言的基本知识和在Microsoft Visual C++ 2010集成开发环境下的上机调试。第2章主要介绍数据、运算与顺序结构程序设计。第3章、第4章介绍选择结构、循环结构控制语句及基本程序设计方法,可以解决比较复杂的实际问题。第5章介绍一维数组、二维数组、字符数组的定义和使用,以及常用的字符串处理函数。第6章介绍函数的定义、调用、参数的使用以及变量的作用域等。第7章介绍编译预处理命令。第8章介绍指针的定义和使用,这是C语言学习的重点与难点,也是体现C语言“高级”能力的知识点。第9章介绍结构体、共用体和枚举类型的定义和使用,以及单向链表的相关内容等。第10章介绍了文件操作、读/写函数及文件的定位和出错检验等。
本书根据编者多年的教学经验编写而成,由浅入深,循序渐进,理论与实践结合,将知识传授与能力培养融为一体。通过本书的学习,读者既能快速掌握C语言的基础知识,又能很快学会C语言的编程技巧,提高解决实际问题的能力。
本书由姜雪担任主编,朱姬凤、杨毅、姚晓杰、王锦担任副主编,秦凯担任主审。第1章、第5章由姚晓杰编写,第2章、第4章、附录由姜雪、秦凯编写,第3章、第7章由王锦编写,第6章、第10章由杨毅编写,第8章、第9章由朱姬凤编写,本书中涉及的所有例题、习题均由王嘉月实践验证,全书由姜雪、秦凯统稿。感谢刘立君、张春芳、王毅、王立武、梁宁玉、杨明学、于鲁佳、陈艳等在编写过程中给予的帮助。
由于编者水平有限,书中难免存在缺点和不足之处,恳请有关专家和读者批评指正。
编 者
2022年10月
1.1 C语言的发展及特点 1
1.1.1 C语言的发展 1
1.1.2 C语言的特点 1
1.2 C语言的标识符与关键字 2
1.2.1 字符集 2
1.2.2 标识符 2
1.2.3 关键字 3
1.3 C语言程序概述 3
1.3.1 C语言程序的基本组成 3
1.3.2 C语言程序的书写风格 5
1.4 C语言程序上机调试 5
1.4.1 Microsoft Visual C++ 2010集成
开发环境 5
1.4.2 C语言程序的上机调试步骤 6
习题1 9
第2章 数据、运算与顺序结构程序设计 11
2.1 数据类型 11
2.2 常量 12
2.2.1 整型常量 12
2.2.2 实型常量 12
2.2.3 字符常量 13
2.2.4 字符串常量 14
2.2.5 符号常量 15
2.3 变量 15
2.3.1 变量的定义和初始化 15
2.3.2 整型变量 17
2.3.3 实型变量 17
2.3.4 字符变量 18
2.4 基本输入/输出函数 19
2.4.1 字符输出函数putchar() 19
2.4.2 字符输入函数getchar() 19
2.4.3 格式输出函数printf() 20
2.4.4 格式输入函数scanf() 24
2.5 运算符和表达式 27
2.5.1 算术运算符和算术表达式 29
2.5.2 赋值运算符和赋值表达式 30
2.5.3 自加、自减运算符及其表达式 31
2.5.4 强制类型转换运算符 32
2.5.5 关系运算符和关系表达式 33
2.5.6 逻辑运算符和逻辑表达式 34
2.5.7 条件运算符和条件表达式 36
2.5.8 逗号运算符和逗号表达式 37
2.5.9 求字节数运算符 38
2.5.10 位运算符和位运算 38
2.6 顺序结构程序设计 40
2.6.1 程序设计基础 40
2.6.2 C语言的基本语句 41
2.6.3 顺序结构程序设计举例 42
习题2 44
第3章 选择结构程序设计 47
3.1 if语句 47
3.2 switch语句 56
习题3 59
第4章 循环结构程序设计 63
4.1 while语句 63
4.2 do-while语句 66
4.3 for语句 68
4.4 转向语句 72
4.4.1 break语句 72
4.4.2 continue语句 73
4.4.3 goto语句 74
4.5 多重循环 75
4.6 循环结构程序设计举例 76
习题4 78
第5章 数组 81
5.1 一维数组 81
5.1.1 一维数组的定义 81
5.1.2 一维数组元素的引用 82
5.1.3 一维数组的初始化 83
5.1.4 一维数组程序应用举例 84
5.2 二维数组 88
5.2.1 二维数组的定义 88
5.2.2 二维数组元素的引用 89
5.2.3 二维数组的初始化 89
5.2.4 二维数组程序应用举例 90
5.3 字符数组 93
5.3.1 字符数组的定义 93
5.3.2 字符数组元素的引用 93
5.3.3 字符数组的初始化 94
5.3.4 字符串与字符数组 94
5.3.5 字符数组的输入/输出 95
5.3.6 常用的字符串处理函数 96
习题5 100
第6章 函数 106
6.1 函数概述 106
6.1.1 C语言程序的结构 106
6.1.2 函数的分类 107
6.2 函数的定义 108
6.2.1 函数定义的形式 108
6.2.2 函数的参数与返回值 109
6.3 函数的使用 110
6.3.1 函数的调用 110
6.3.2 函数的声明 111
6.4 函数的调用方式 112
6.4.1 函数的嵌套调用 112
6.4.2 函数的递归调用 113
6.5 函数的参数传递方式 116
6.5.1 单向值传递方式 116
6.5.2 地址传递方式 117
6.6 变量的作用域与存储类别 119
6.6.1 变量的作用域 119
6.6.2 变量的存储类别 121
6.7 内部函数和外部函数 125
6.7.1 内部函数 125
6.7.2 外部函数 125
习题6 126
第7章 编译预处理 131
7.1 宏定义 131
7.2 文件包含 135
7.3 条件编译 138
习题7 139
第8章 指针 141
8.1 地址与指针的概念 141
8.1.1 地址与指针 141
8.1.2 变量的指针 141
8.2 指针变量 142
8.2.1 指针变量的定义及初始化 142
8.2.2 指针变量的引用 145
8.3 指针与数组 147
8.3.1 数组的指针和指针变量 147
8.3.2 指针运算 147
8.3.3 通过指针引用数组元素 149
8.3.4 指针与二维数组 152
8.4 字符串与字符指针 156
8.4.1 字符指针变量 156
8.4.2 字符指针与字符数组的区别 157
8.5 指针数组 158
8.5.1 指针数组概述 158
8.5.2 指针数组作为main()函数的参数 161
8.6 指向函数的指针与返回指针值的函数 162
8.6.1 指向函数的指针变量 162
8.6.2 返回指针值的函数 164
8.7 指针作为函数的参数 165
8.8 多级指针 169
习题8 171
第9章 结构体与共用体 175
9.1 结构体类型与结构体变量 175
9.1.1 结构体类型的定义 175
9.1.2 结构体变量 176
9.1.3 结构体变量的引用 178
9.2 结构体数组 180
9.2.1 结构体数组的定义及初始化 181
9.2.2 结构体数组元素的引用 181
9.3 指向结构体类型数据的指针 182
9.3.1 指向结构体变量的指针变量 183
9.3.2 指向结构体数组的指针变量 184
9.4 单向链表 185
9.4.1 单向链表的数据结构 186
9.4.2 动态分配和释放空间函数 186
9.4.3 单向链表的基本操作 187
9.5 共用体 196
9.5.1 共用体类型的定义 196
9.5.2 共用体变量的定义 196
9.5.3 共用体变量的引用 197
9.5.4 共用体变量的赋值 198
9.6 枚举类型 199
9.7 用typedef定义类型 201
习题9 202
第10章 文件 205
10.1 文件概述 205
10.1.1 文件系统概述 205
10.1.2 文件类型指针 206
10.1.3 使用文件的步骤 207
10.2 文件的打开与关闭 207
10.2.1 文件的打开 207
10.2.2 文件的关闭 209
10.3 文件的读/写 209
10.3.1 字符读/写函数 210
10.3.2 字符串读/写函数 211
10.3.3 格式化读/写函数 212
10.3.4 数据块读/写函数 214
10.4 文件的定位 216
10.5 文件的出错检验 217
习题10 218
附录A 常用字符与ASCII码对照表 222
附录B C语言常用库函数 224
参考文献 230
- 零基础玩转国产大模型DeepSeek [徐永冰 张帅 编著]
- 网络工程师5天修炼(适配第6版考纲) [主编 朱小平 施游]
- 信息系统项目管理师考试32小时通关(适用第4版考纲) [薛大龙]
- 信息系统管理工程师考试32小时通关(适配第2版考纲) [薛大龙 刘伟]
- 土木工程材料检测实训 [洪晓江 达则晓丽 钱波]
- 科技信息检索与论文写作实用教程 [李振华]
- 传统山水画论解读与实践 [陈钠 著]
- Python数据库编程 [主编 殷树友 邢 翀]
- 计算机基础实训指导 [主编 袁春萍 朱妮]
- 嵌入式人工智能技术应用(数字教材) [主编 胡娜 杨国勇 晏廷荣]
- Vienna整流器技术 [桂存兵 著]
- 变频器与伺服应用 [陈刚 叶云飞]
- 物联网工程设计与实践 [汤琳 李敏]
- 炉边夜话——深入浅出话AI [汪建 著]
- 电商运营与管理 [钟肖英 陈潇]
- Java面向对象程序设计 [主编 姜春磊 陈虹洁]
- 信息技术基础(Windows 10+WPS Office)(微课版) [主编 石利平 田辉平 谢盛嘉]
- 人工智能应用 [主编 陈 萍 刘培培 陈孟军]
- 大学生职业发展与就业指导 [主编 刘志坚]
- 高级办公应用项目教程 [主编 屈晶 赵成丽]
- 微信小程序开发项目实战(微课版) [主编 黄龙泉 郭峰 朱倩]
- 企业档案工作实战宝典百问百答 [华俊 卢秀英 邵甜甜 著]
- 计算机网络原理及应用 [主编 唐继勇 叶坤 孙梦娜]
- 大学生创业基础 [主编 王丽莉 王 杨]
- 船舶辅机 [主编 王连海 于洋 姜淑翠]
- 大学生就业指导 [主编 王丽莉 董宴廷]
- 系统架构设计师章节习题与考点特训 [主编 薛大龙 邹月平]
- 高校学生工作探索与实践 [郭亮 著]
- 大学生情商管理 [方雄 著]
- 2023年长沙市会展业发展报告 [主编 周栋良]