C语言程序设计案例教程
书 号:9787113231903
丛 书 名:
作 者:马玉芳,杜丽娟
译 者:
开 本:16开
装 帧:平装
正文语种:
出 版 社:中国铁道出版社有限公司
定 价:43元
-
内容简介
本书是学习C语言程序设计的基础教材。全书主要内容包括:C语言概述、简单C语言程序、分支结构程序设计、循环结构程序设计、数组、模块化程序设计、指针、结构体、文件,最后,还给出了一个几乎涵盖教材所有知识点的综合应用实例。每章后均附有相当数量的习题供读者练习。
本书在内容安排上采用循序渐近的方式,在组织形式上采用通俗易懂的案例教学和启发式教学的方式,并辅以大量的便于说明问题的案例,用案例带动知识点的方法进行讲解,对知识点进行了细致的取舍和编排,便于读者在实践中学习和巩固所学知识。
本书适合作为高等院校C语言程序设计教材,也可作为全国计算机等级考试参考书和对C语言感兴趣的读者的参考书。 -
前言
信息技术的发展日新月异,计算机网络也在不断地变化和发展之中,不断涌现新的网络技术和网络应用。物联网、大数据、云计算、互联网+等新的专业名词和技术相继进入人们的视野,而计算机网络技术作为这些新技术的基础和支撑,显得愈发重要。
计算机网络技术发展至今,早已形成了完整的知识结构和知识体系,国内外也出版了众多经典的优秀教材。本教材课题组在对这些教材的调研中发现,这些国内外经典的优秀教材普遍侧重于计算机网络的理论知识,而实践性、工程性知识稍有欠缺,适合于国内985、211高校的科研型学生。而对于国内的应用型本科高校,培养的学生大多是从事工程技术型的工作。在当前国内大力提倡培养“双创型”人才的大环境下,对于应用型本科高校,如何深入开展创新创业教育改革,进一步提高应用型人才培养质量,值得深思。而课程是人才培养环节中基础而重要的一环。就计算机网络课程而言,如何挖掘和凝练适用于应用型本科高校的计算机网络教材的特色,值得探索与实践。本书在调研当前已有的经典计算机网络教材的基础上,借鉴了华为网络技术认证和思科网络技术认证相关教材的设计思路编写而成。
本书首先对计算机网络的基本概念、网络体系结构与网络协议进行了系统讨论与分析;接着以典型的企业网络架构为基础,对计算机网络中的两大关键技术——交换技术和路由技术进行了系统而详尽的介绍;最后,分析了典型的应用层协议,对移动互联网技术、物联网技术两种网络新技术以及网络安全技术进行了概要性的介绍,为读者学习网络新技术和网络安全技术进行了指引。
本书具体分为三个部分。第一部分包括第1章和第2章,侧重于计算机网络的基础知识:第1章介绍了计算机网络的产生与发展,计算机网络的功能,计算机网络的定义、组成与分类,计算机网络的拓扑结构,网络交换技术,Internet接入方式等;第2章介绍了网络协议、计算机网络体系结构的基本概念、OSI和TCP/IP参考模型、网络标准化等。第二部分包括第3章至第7章,侧重于计算机网络的关键技术:第3章介绍了典型的企业网络拓扑,包括常见企业网络架构、传输媒介、网络设备等;第4章介绍了IP网络基础,包括以太网的帧结构、IP编址、NAT技术、下一代网际协议IPv6、ARP协议、传输层协议TCP和UDP、HDLC协议、PPP协议等;第5章介绍了交换技术,包括经典局域网的交换技术、扩展局域网、生成树协议、交换式以太网、虚拟局域网等;第6章介绍了路由技术,包括路由选择及分组转发、路由算法、内部网关协议和外部网关协议等;第7章介绍了典型应用层协议,包括域名系统DNS、远程终端协议TELNET、主机配置与动态主机配置DHCP、文件传输协议FTP等。第三部分包括第8章和第9章,侧重于网络技术的进一步引申:第8章介绍了网络新技术,包括移动互联网技术和物联网技术;第9章介绍了网络安全基础知识,包括网络安全概述、加密技术、VPN技术、防火墙技术、入侵检测技术等。
本书教学安排建议如下。
章 节 内 容 学 时 数
第1章 计算机网络概述 2
第2章 网络体系结构与网络协议 4
第3章 典型企业网络架构 4
第4章 IP网络基础 12
第5章 交换技术 8
第6章 路由技术 8
第7章 典型的应用层协议 4
第8章 网络新技术 4
第9章 网络安全 2
建议理论教学学时数:48学时。
建议实践教学学时数:12~18学时。
授课教师可根据教学需要适当删减内容,也可根据教学目标,灵活增减各章的学时数。
本书的每章都有教学提示、学习要求和习题,用来检查和巩固学习效果。此外,本书配备了多媒体课件,并按照省级精品资源共享课建设的要求,在参考了当前几大流行精品资源共享课的基础上(中国大学MOOC、云路课堂在线学习平台、爱课程在线学习平台等),建设了在线课程学习平台(网址:http://202.192.88.112:8081/G2S/ Template/ Viewaspx?action=view&courseType=0&courseId=126),方便读者学习。
本书由刘磊安、周如旗、陈小明任主编,邹莹、倪宇、赵爱芹、刘志贺任副主编,王洪江、陆谊参与编写,全书由刘磊安统稿。另外,感谢石玉强教授、闫大顺副教授、吴家培副教授、杨灵副教授给予的指导和各种不同形式的帮助。在本书的编写过程中,参考了大量相关领域的经典优秀教材,被引用书籍的作者对本书的完成起到了重要作用,在此,对他们表示诚挚的感谢。
由于计算机网络技术发展迅速,知识更新很快,且编者水平有限,时间仓促,书中难免有不妥之处,敬请读者与同行批评指正。编者邮箱:Networks_2016@163.com。
编 者
2016年5月 C语言是国内外应用广泛、最具影响力的计算机语言之一,是大学理工科学生的必修课。它概念简洁、数据类型丰富、表达能力强、使用方便灵活、可移植性好,既具有高级语言的优点,又具有低级语言的许多特点,既适合于编写应用程序,又适合于编写系统程序,是一种理想的结构化程序设计语言。
本书是学习C语言程序设计的基础教材。全书共分10章:第1章首先以一个C语言程序为例,介绍了程序、程序设计语言、C语言及C语言编程环境;第2章介绍了简单C语言程序和简单数据类型、算术表达式及输入/输出函数;第3章和第4章主要介绍分支结构和循环结构程序进行结构化程序设计的基本方法和有关算法的知识;第5章介绍了C语言数组的定义与使用;第6章对模块化程序设计中函数的定义、函数的调用和使用函数编写程序作了充分的阐述;第7章对指针和指针变量定义及应用作了详细阐述;第8章重点介绍了结构体及其应用;第9章介绍了C语言的文件系统;第10章用C语言开发软件实例,以一个几乎涵盖教材所有知识点的综合应用实例(电子通讯录)进行了分析与设计。此外,每章后均附有习题供读者练习。
本书由商丘工学院C语言程序设计课程组的教师,在多年从事C语言程序设计课程的教学实践基础上,结合讲义编写而成。在内容安排上采用循序渐近的方式,在组织形式上采用通俗易懂的案例教学和启发式教学方式,并辅以大量的便于说明问题的案例,用案例带动知识点的方法进行讲解,对知识点进行了细致的取舍和编排,按节细化知识点,并将知识点和案例放在同一节中,知识和案例相结合,使学生在学习过程中迅速掌握编程技巧,培养良好的编程风格。
全书由商丘工学院马玉芳、杜丽娟任主编,王艳丽、杨花雨、赵莉苹、路晓亚、汪新民参与编写。由马玉芳、汪新民统稿。全书编写分工如下:第1章及第6章的习题部分由王艳丽老师编写, 第2章、第3章、第6章及第9章由马玉芳老师编写,第4章、第10章由赵莉苹老师编写,第5章由杨花雨老师编写,第7章由杜丽娟老师编写,第8章由路晓亚老师编写,王艳丽、杨花雨老师编写了模拟试题及附录。
由于计算机科学技术发展迅速,程序设计的教学内容、方法和手段日新月异,加之编者水平有限,书中难免有疏漏和不足之处,敬请读者提出宝贵意见,以便再版时修改完善。
编者
2017.3 -
目录
第1章 C语言概述 1
1.1 一个C语言程序 1
1.2 程序和程序设计语言 2
1.3 计算机求解问题的步骤 3
1.4 C语言概述 5
1.5 C语言编程环境 8
知识拓展 8
知识链接 8
阅读材料 8
习题 12
上机实验 13
第2章 简单C语言程序 14
2.1 在屏幕上显示信息 15
2.2 数值计算 16
2.3 程序解析 16
2.3.1 简单数据类型 17
2.3.2 算术表达式 25
2.4 顺序结构程序设计 32
2.4.1 顺序结构 32
2.4.2 C顺序结构程序设计举例 32
2.5 输入/输出函数 34
2.5.1 printf函数 34
2.5.2 scanf函数 38
2.5.3 其他输入/输出函数 40
2.6 打印简单字符图案 42
2.7 计算银行存款利息 42
知识拓展 43
知识链接 43
阅读材料 44
习题 48
上机实验 52
第3章 分支结构程序设计 54
3.1 判断从键盘输入的整数的奇偶性 55
3.2 判断学生成绩的等级 55
3.3 分支结构程序设计 56
3.3.1 关系表达式和逻辑表达式 56
3.3.2 基本if语句 57
3.3.3 嵌套的if语句和switch语句 60
3.3.4 设计一个简易计算器 63
知识拓展 65
知识链接 65
阅读材料 65
习题 68
上机实验 73
第4章 循环结构程序设计 74
4.1 累加求和问题 75
4.1.1 求自然数的和 75
4.1.2 计算圆周率 75
4.2 while语句 76
4.2.1 while语句的一般形式 76
4.2.2 统计输入的一批学生的平均成绩 77
4.3 do…while语句 79
4.3.1 do…while语句的一般形式 79
4.3.2 最大公约数问题 80
4.4 for语句 80
4.4.1 for语句的一般形式 80
4.4.2 Fibonacci数列 82
4.5 九九乘法表 83
4.5.1 九九乘法表 83
4.5.2 百钱买百鸡问题 84
4.6 break语句与continue语句 84
4.6.1 break语句 84
4.6.2 continue 语句 85
4.7 循环结构程序应用举例 86
知识拓展 90
知识链接 90
阅读材料 90
习题 92
上机实验 98
第5章 数组 100
5.1 排序问题 101
5.1.1 程序解析 101
5.1.2 一维数组的定义和引用 102
5.1.3 一维数组的初始化 102
5.1.4 使用一维数组编程 103
5.2 找出矩阵中最大值所在的位置 104
5.2.1 程序解析 104
5.2.2 二维数组的定义和引用 104
5.2.3 二维数组的初始化 105
5.2.4 使用二维数组编程 106
5.3 字符数组与字符串 107
5.3.1 字符数组 107
5.3.2 统计字符个数 108
5.3.3 字符串处理函数及应用 109
5.4 进位制转换 112
5.4.1 十进制转换为八(二、十六)进制 112
5.4.2 输出进位制转换表 114
知识拓展 116
知识链接 116
阅读材料 116
习题 119
上机实验 124
第6章 模块化程序设计 125
6.1 计算圆的周长和面积 126
6.2 使用函数编写程序 126
6.2.1 函数定义的一般形式 127
6.2.2 函数的参数 129
6.2.3 函数的返回值和类型 130
6.3 变量与函数 130
6.3.1 局部变量和全局变量 130
6.3.2 变量生命周期和静态局部变量 134
6.4 函数的调用 137
6.4.1 函数调用的一般形式 137
6.4.2 函数的调用方式 138
6.4.3 函数与数组 138
6.4.4 函数的嵌套调用 139
6.5 递归问题求解 142
6.6 编译预处理 146
6.6.1 概述 146
6.6.2 宏定义 146
6.6.3 文件包含 149
知识拓展 150
知识链接 151
阅读材料 151
习题 155
上机实验 162
第7章 指针 163
7.1 寻找保险箱密码 164
7.1.1 寻找保险箱密码解析 164
7.1.2 地址与指针 165
7.1.3 指针变量及其定义 166
7.1.4 指针变量的基本运算 166
7.1.5 指针变量的初始化 168
7.2 指针型函数 169
7.2.1 问题解析 169
7.2.2 指针作为函数的参数 170
7.3 排序算法 173
7.3.1 冒泡排序 174
7.3.2 指针、数组和地址间的关系 175
7.3.3 通过指针引用数组元素 175
7.3.4 数组名作为函数的参数 178
7.4 字符串加密 180
7.4.1 加密问题 180
7.4.2 字符串和字符指针 181
7.5 指针数组和指向指针的指针 183
7.5.1 指针数组的概念 183
7.5.2 指向指针的指针 185
7.5.3 指针数组作main()函数的形参 186
7.6 任意个整数的存储问题 187
7.6.1 任意个整数的存储问题 187
7.6.2 用指针实现内存动态分配 188
知识拓展 189
知识链接 189
阅读材料 190
习题 191
上机实验 198
第8章 结构体 199
8.1 构建学生基本信息结构体 200
8.2 结构体变量 201
8.2.1 结构体变量定义 201
8.2.2 结构体变量的引用 203
8.2.3 结构体变量的初始化 204
8.3 结构体数组 204
8.3.1 结构体数组的定义 205
8.3.2 结构体数组的初始化 205
8.3.3 应用举例 206
8.4 指针和结构体 207
8.4.1 指向结构体变量的指针 207
8.4.2 指向结构体数组的指针 208
8.4.3 结构指针参数 208
8.5 结构体综合应用 209
8.5.1 约瑟夫问题 209
8.5.2 用链表处理学生信息 210
知识拓展 217
知识链接 217
阅读材料 217
习题 222
上机实验 229
第9章 文件 230
9.1 将"China 2016!"写入文件 231
9.2 读取学生信息文件 237
9.3 文件复制 238
知识拓展 241
知识链接 241
阅读材料 241
习题 242
上机实验 244
第10章 用C语言开发软件实例 245
10.1 问题描述 245
10.2 需求分析 246
10.3 模块设计 246
10.4 程序编码 246
10.5 程序调试运行 251
知识拓展 252
知识链接 252
阅读材料 253
习题 255
上机实验 255
模拟试题及参考答案 256
模拟试题一 256
模拟试题二 260
模拟试题三 264
模拟试题一参考答案 267
模拟试题二参考答案 269
模拟试题三参考答案 271
附录 273
附录A ASCII码表 273
附录B C99关键字 275
附录C 常用库函数 275
附录D 常见出错信息 279
参考文献 286 -
作者介绍
马玉芳:本科毕业于新疆石河子大学信息工程系计算机及应用专业,现任商丘工学院信息与电子工程学院教学副院长,副教授。承担“计算机基础”“C语言”“数据库”“Photoshop图形图像处理”“三维动画设计与制作”等多门课程。杜丽娟:硕士,讲师,商丘工学院计算机应用技术教研室主任,2002年至今一直从事教育教学工作。任教以来,主要承担“C#程序设计”“Java语言程序设计”“ASP.NET程序设计”“FLASH动画设计”等多门课程。 -
编辑推荐
-
书评书荐
-
附件下载
图书推荐