温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
语言程序设计
教程
职业教育课程改革实验教材系列 C 语言程序设计教程 王新萍 郑 静 主 编 张晓明 张玛丽 苏 彬 袁 源 贾晋宁 韩继英 樊斌峰 Publishing House of Electronics Industry 北京BEIJING 参 编 内 容 简 介 本书由多年从事 C 语言教学的教师编写。全书共分 11 章,主要内容包括:第 1 章介绍 C 语言的发展及特点;第 2 章介绍 C 语言的基本概念、数据类型、运算符及表达式;第 3 章介绍顺序结构程序设计;第 4 章介绍选择结构程序设计;第 5 章介绍循环结构程序设计;第 6 章介绍数组类型;第 7 章介绍函数;第 8 章介绍指针类型;第 9 章介绍结构体和联合体;第 10 章介绍编译预处理;第 11 章介绍文件类型。在编写时注意从实用出发,内容由浅入深,每章附有趣味程序实例,以增强学习的兴趣和乐趣。本书最后还配有丰富的模拟试题,以便读者更好地掌握所学知识。本书内容丰富、语言简练易懂,融趣味性与操作性于一体。可作为高职高专 C 语言程序课程的实用教材,也可以供初学编程者自学用书。为方便教师教学,本书还配有教学指南、电子教案和习题答案(电子版),详见前言。未经许可,不得以任何方式复制或抄袭本书之部分或全部内容。版权所有,侵权必究。图书在版编目(CIP)数据 C 语言程序设计教程/王新萍,郑静主编.北京:电子工业出版社,2010.12 职业教育课程改革实验教材系列 ISBN 978-7-121-11632-2.C .王 郑 .C 语言程序设计高等学校:技术学校教材 .TP312 中国版本图书馆 CIP 数据核字(2010)第 161062 号 策划编辑:关雅莉 责任编辑:张 帆 印 刷:装 订:出版发行:电子工业出版社 北京市海淀区万寿路 173 信箱 邮编 100036 开 本:7871092 1/16 印张:17.75 字数:438.4 千字 印 次:2010 年 12 月第 1 次印刷 印 数:3 000 册 定价:29.80 元 凡所购买电子工业出版社图书有缺损问题,请向购买书店调换。若书店售缺,请与本社发行部联系,联系及邮购电话:(010)88254888。质量投诉请发邮件至 ,盗版侵权举报请发邮件至 。服务热线:(010)88258888。北京季蜂印刷有限公司 前 言 C 语言作为一种计算机程序设计语言,它功能丰富,表达能力强,使用灵活方便,应用面广,可移植性好,集高级语言和低级语言的优点于一身。它代码质量高,有利于提高编程效率。因此,C 语言已成为当今最有影响的语言之一,学习 C 语言成为广大计算机应用人才和大中专院校学生的迫切要求。在大中专院校和职业技术学院的计算机专业和相近专业都开设了 C 语言程序设计课程。非计算机专业也逐步将 C 语言作为程序设计的首选课程。本书是针对职业院校学生的状况和初学者的需求来编写的。注重培养学生的逻辑思维和编程思维。在内容组织上删繁就简,以 C 语言最基本的内容为主线,深入浅出。循序渐进地帮助读者掌握 C 语言的基本内容。本书最后还配有丰富的模拟试题,以便读者更好地掌握所学知识。程序设计在某种意义上来说是一项既复杂又枯燥的工作,它需要付出艰苦的劳动,同时又充满着探索和追求的乐趣。为了摆脱学习的枯燥乏味,我们在每一章附有趣味程序设计实例,以将程序设计的技术和方法融于趣味问题中,通过对多种趣味问题的讨论,使读者在轻松、愉悦的氛围中探索程序的奥妙,达到事半功倍的效果。本书由山西综合职业技术学院计算机工程系王新萍、郑静担任主编。编写分工如下:第1 章由山西综合职业技术学院郑静编写;第 2 章及附录由太原大学的张晓明编写;第 3 章由山西综合职业技术学院张玛丽编写;第 4 章、第 5 章由山西综合职业技术学院韩继英编写;第 6 章由山西综合职业技术学院王新萍编写;第 7 章、第 10 章由山西综合职业技术学院袁源编写;第 8 章、第 11 章由山西综合职业技术学院樊斌峰编写;第 9 章由山西综合职业技术学院贾晋宁编写;趣味程序实例由山西综合职业技术学院苏彬编写。全书由山西综合职业技术学院王新萍统稿。为方便教师教学,本书还配有教学指南、电子教案和习题答案(电子版)。请有此需要的教师登录华信教育资源网()免费注册后再进行下载,有问题请在网站留言板留言或与电子工业出版社联系(E-mail:)。由于 我 们 水 平 有 限,本 书 一 定 有 不 少 错 误 之 处,恳 请 读 者 批 评 指 正,编者E-mail:wangxp_。编 者 2010 年 4 月 目 录 第 1 章 C 语言概述.1 1.1 C 语言的历史背景.2 1.2 C 语言的特点.2 1.3 简单的 C 程序介绍.3 1.4 C 程序的上机步骤.5 1.5 C 语言趣味程序实例 1.8 1.6 本章小结.9 1.7 复习题.10 1.8 程序设计实践.11 第 2 章 数据类型、运算符和表达式.13 2.1 C 语言的数据类型.14 2.2 常量与变量.14 2.2.1 标识符.15 2.2.2 常量与符号常量.15 2.2.3 变量.16 2.3 整型数据.17 2.3.1 整型常量.17 2.3.2 整型变量.17 2.4 实型数据.18 2.4.1 实型常量.18 2.4.2 实型变量.18 2.5 字符型数据.19 2.5.1 字符常量.19 2.5.2 字符变量.20 2.5.3 字符串常量.20 2.6 变量赋初值.21 2.7 运算符及表达式.21 2.7.1 算术运算符及算术表达式.22 2.7.2 自增、自减运算符及其表达式.22 2.7.3 赋值运算符及赋值表达式.23 2.7.4 逗号运算符及逗号表达式.24 2.7.5 不同类型数据间的混合运算.25 I 2.7.6 C 语言中的运算符见表 2.5.27 2.8 C 语言趣味程序实例 2.28 2.9 本章小结.30 2.10 复习题.30 2.11 程序设计实践.31 第 3 章 最简单的 C 程序设计顺序程序设计.33 3.1 C 语句概述.34 3.2 程序的三种基本结构.35 3.3 赋值语句.36 3.4 字符数据的输入与输出.36 3.4.1 putchar 函数.37 3.4.2 getchar 函数.37 3.5 格式的输入与输出.38 3.5.1 printf 函数.38 3.5.2 scanf 函数.40 3.6 C 语言趣味程序实例 3.42 3.7 本章小结.42 3.8 复习题.43 3.9 程序设计实践.44 第 4 章 选择结构程序设计.45 4.1 关系运算符及其表达式.46 4.2 逻辑运算符及其表达式.47 4.2.1 逻辑运算符.47 4.2.2 逻辑表达式.47 4.3 if 语句.48 4.3.1 if 语句的三种形式.48 4.3.2 if 语句的嵌套.52 4.3.3 条件运算符.53 4.4 switch 语句.54 4.5 程序举例.55 4.6 C 语言趣味程序实例 4.58 4.7 本章小结.59 4.8 复习题.59 4.9 程序设计实践.62 第 5 章 循环的控制.63 5.1 循环的概念.64 5.2 while 语句.64 目 录 II 5.3 dowhile 语句.66 5.4 for 语句.68 5.5 循环的嵌套.70 5.6 break 语句和 continue 语句.71 5.6.1 break 语句.71 5.6.2 continue 语句.72 5.7 程序举例.73 5.8 C 语言趣味程序实例 5.75 5.9 本章小结.76 5.10 复习题.76 5.11 程序设计实践.79 第 6 章 数组.81 6.1 一维数组的定义与引用.82 6.1.1 一维数组的定义.82 6.1.2 一维数组元素的引用.82 6.1.3 一维数组的初始化.83 6.1.4 一维数组程序举例.84 6.2 二维数组的定义与引用.85 6.2.1 二维数组元素的定义.85 6.2.2 二维数组元素的引用.86 6.2.3 二维数组的初始化.87 6.2.4 二维数组程序举例.87 6.3 字符数组.88 6.3.1 字符数组的定义.88 6.3.2 字符数组的初始化.89 6.3.3 字符数组元素的引用.89 6.3.4 字符串和字符串结束标志.90 6.3.5 字符数组的输入输出.90 6.3.6 字符串处理函数.91 6.3.7 字符数组应用举例.94 6.4 C 语言趣味程序设计实例 6.95 6.5 本章小结.96 6.6 复习题.97 6.7 程序设计实践.98 第 7 章 函数.101 7.1 模块化程序设计和 C 语言程序组成.102 7.2 库函数.103 7.2.1 C 语言常用库函数.104 III 7.2.2 include 命令的使用.104 7.3 函数的定义与调用.105 7.3.1 函数的定义.105 7.3.2 函数的调用.106 7.4 函数的返回值及其类型.109 7.5 函数调用时参数间的传递.110 7.5.1 将变量、常量、数组元素作为参数时的传递.110 7.5.2 将数组名作为参数时的传递.111 7.6 函数的嵌套调用.112 7.7 函数的递归调用.113 7.8 作用域和存储类型.116 7.8.1 变量的存在性和可见性.116 7.8.2 局部变量和全局变量.117 7.8.3 变量的存储类型.120 7.9 C 语言趣味程序设计实例 7.123 7.10 本章小结.124 7.11 复习题.125 7.12 程序设计实践.130 第 8 章 指针.131 8.1 指针的基本概念.132 8.2 指针变量的使用与指针运算.133 8.2.1 指针变量的定义.133 8.2.2 指针变量的初始化.133 8.2.3 指针的两个运算.134 8.2.4 指针变量的引用.134 8.2.5 指针的算术运算、关系运算.135 8.3 指针与数组.138 8.3.1 指针与一维数组.138 8.3.2 指针与二维数组.140 8.4 字符串与指针.142 8.4.1 字符串的表示形式.142 8.4.2 字符数组与字符串指针变量比较.143 8.5 用数组名作函数参数.144 8.6 C 语言趣味程序实例 8.148 8.7 本章小结.150 8.8 复习题.152 8.9 程序设计实践.154 目 录 I 第 9 章 结构体与联合体.155 9.1 结构体的定义.156 9.2 结构体在程序中的使用.157 9.3 结构体数组.160 9.4 结构指针.161 9.5 结构体与函数.164 9.6 联合体.167 9.7 C 语言趣味程序实例 9.170 9.8 本章小结.174 9.9 复习题.174 9.10 程序设计实践.175 第 10 章 预处理命令.177 10.1 宏定义.178 10.1.1 无参宏定义.178 10.1.2 带参宏定义.180 10.2 文件包含.182 10.3 条件编译.182 10.4 C 语言趣味程序设计实例 10.185 10.5 本章小结.186 10.6 复习题.187 10.7 程序设计实践.187 第 11 章 文件.189 11.1 文件的概念.190 11.2 文件的打开与关闭.191 11.3 文件的字符输入与输出.193 11.4 文件的字符串输入与输出.195 11.5 文件的格式化输入与输出.197 11.6 C 语言趣味程序实例 11.198 11.7 本章小结.201 11.8 复习题.201 11.9 程序设计实践.203 模拟试题一.208 模拟试题二.213 模拟试题三.218 模拟试题四.222 模拟试题五.226 模拟试题六.230 模拟试题七.234 模拟试题八.238 模拟试题九.241 模拟试题十.245 模拟试题十一.249 模拟试题十二.254 模拟试题十三.258 模拟试题十四.263 模