杨国兴、邹广慧、宋晏编著的《C语言实例教程》以实例的形式介绍C语言程序设计方法,通过实例程序引出知识点。全书提供126个实例程序和实验程序,覆盖了C语言的全部内容,包括数据类型、控制语句、指针、数组、函数、构造类型、位运算、编译预处理和文件,并涉及一些常用的算法。
本书可作为高等院校C程序设计教材,也可供使用C语言进行程序开发的技术人员作为参考书。
C语言是广泛使用的计算机程序设计语言之一。C语言既适用于应用软件的设计,也适用于系统软件的设计。
本书以实例的形式介绍C语言程序设计的相关知识,在编写方面主要有以下4个特点。
(1) 从实例引出知识点。首先提出要解决的问题,然后通过分析给出实例程序,再从程序中总结知识点。有利于读者主动地去分析问题和解决问题,将理论与实践相结合。
(2) 重视实验。程序设计语言是一门实践性很强的课程,只有通过大量的上机实验,才能真正理解程序的运行机制,实验对提高程序设计的能力具有重要的作用。为此本书每一章都提供了大量的实验题目供读者练习。
(3) 内容组织。理解数据在内存中的组织形式,对C语言程序设计的学习具有非常关键的作用。本书在内容组织方面,改变了大部分教材的顺序,将指针的介绍提前到第3章,使读者尽早了解地址的概念。
(4) 算法的介绍。在实例的选取上,尽量选择在介绍C语言知识的同时,也涉及一些计算机程序设计的常用算法,为将来实际程序的编写打下基础。
为了方便教师教学与学生学习,为使用本教材的教师提供PowerPoint电子教案,方便教师根据具体情况进行必要的修改。
本书共分10章,主要内容如下。
第1章简单的C程序,由10个实例程序构成,介绍C程序的基本结构、数据类型、算数运算符和赋值运算符、printf函数和scanf函数的使用,以及使用Visual C++ 6.0编写、编译和运行C程序的方法。
第2章程序控制语句,由17个实例程序构成,介绍关系运算符、逻辑运算符、选择结构程序、循环结构程序。
第3章指针,由8个实例程序构成,介绍地址、指针、指针变量等基本概念、指针的运算,以及内存的动态分配。
第4章数组,由11个实例程序构成,介绍数组的定义及使用。包括一维数组、二维数组、字符数组、指针与数组的关系、常用字符串处理函数,以及冒泡排序算法和选择排序算法。
第5章函数,由12个实例程序构成,介绍函数的定义和使用、参数与返回值、函数的嵌套调用与递归调用,以及变量的存储类别等。
第6章构造类型,由9个实例程序构成,介绍结构体类型、共用体类型、枚举类型的定义与使用,以及使用结构体处理单链表。
第7章位运算,由4个实例程序构成,介绍位运算符的运算规则及一些简单的应用。
第8章编译预处理,由4个实例程序构成,介绍宏定义、文件包含以及条件编译等3个预处理指令。
第9章文件,由7个实例程序构成, 介绍文件的概念、文件打开与关闭、文件读写、文件定位,以及出错检查等。
第10章综合实例,由4个实例程序构成,综合运用C语言设计比较复杂的实用程序。4个实例程序是计算某一天是星期几、八皇后问题、迷宫问题和简单的客房管理系统。
参加本书编写工作的主要有杨国兴、邹广慧、宋晏、严婷、谢永红、庄凤娟、杨国文、王国芳、庄莉等。
由于作者水平有限,书中难免有不妥之处,恳请专家与读者批评指正。
作者2014年3月
第1章 简单的C程序
1.1 内容介绍
1.1.1 程序设计语言的发展
1.1.2 C语言的特点
1.2 实例
实例1.2.1 在屏幕上输出信息
实例1.2.2 计算两个整数之和并输出到屏幕
实例1.2.3 计算两个数的和、差、积、商和余数并输出到屏幕
实例1.2.4 求圆的周长和面积
实例1.2.5 转义字符的使用
实例1.2.6 求三角形的面积
实例1.2.7 复合赋值运算符的使用
实例1.2.8 自增自减运算符的使用
实例1.2.9 检测各种数据类型所占的字节数
实例1.2.10 八进制、十六进制整数的表示及输出 第1章 简单的C程序
1.1 内容介绍
1.1.1 程序设计语言的发展
1.1.2 C语言的特点
1.2 实例
实例1.2.1 在屏幕上输出信息
实例1.2.2 计算两个整数之和并输出到屏幕
实例1.2.3 计算两个数的和、差、积、商和余数并输出到屏幕
实例1.2.4 求圆的周长和面积
实例1.2.5 转义字符的使用
实例1.2.6 求三角形的面积
实例1.2.7 复合赋值运算符的使用
实例1.2.8 自增自减运算符的使用
实例1.2.9 检测各种数据类型所占的字节数
实例1.2.10 八进制、十六进制整数的表示及输出
1.3 小结
1.3.1 数据类型
1.3.2 标识符、常量与变量
1.3.3 运算符
1.3.4 printf函数和scanf函数
1.3.5 数据类型转换
1.4 实验
1.4.1 实验目的
1.4.2 实验内容
习题
第2章 程序控制语句
2.1 内容介绍
2.2 实例/27实例
2.2.1 求两个数中较大的值
实例2.2.2 求分段函数的值
实例2.2.3 根据考试成绩,输出不同的结果
实例2.2.4 编一个程序计算指定年月有几天
实例2.2.5 求1~100的累加和
实例2.2.6 求阶乘
实例2.2.7 从键盘输入任意个正整数,求出最大的数
实例2.2.8 求100之内不能被3整除的整数之和
实例2.2.9 判断某个整数是否为素数
实例2.2.10 打印乘法口诀表
实例2.2.11 打印水仙花数(阿姆斯特朗数)
实例2.2.12 求π的近似值
实例2.2.13 猴子吃桃问题
实例2.2.14 鸡兔同笼问题
实例2.2.15 求自守数
实例2.2.16 求完数
实例2.2.17 打鱼晒网问题
2.3 小结
2.3.1 关系运算符与关系表达式
2.3.2 逻辑运算符与逻辑表达式
2.3.3 条件运算符
2.3.4 选择结构程序
2.3.5 循环结构程序
2.3.6 continue语句、break语句与goto语句
2.4 实验
2.4.1 实验目的
2.4.2 实验内容
习题
第3章 指针
第4章 数组
第5章 函数
第6章 构造类型
第7章 位运算
第8章 编译预处理
第9章 文件
第10章 综合实例
附录A 索引
参考文献