本书是与教材《C语言程序设计(第三版)》相配套的学习指导与实验用书,内容主要包括C语言程序设计学习指导和C语言程序设计实验教程两部分。在学习指导部分,介绍了C语言各章知识的要点和难点,选择了一些典型例题进行分析,选编了许多练习题。这些习题题型丰富、覆盖面广,包括选择题、填空题、阅读程序写结果题、编写程序题,并且每道题基本上都给出了参考答案。通过这些练习题,可以训练读者理解和掌握C语言的基本概念与基本语句,编写程序、学习编程的方法和技巧。在实验教程部分,介绍了C语言开发工具C-Free的使用方法;介绍了11个实验内容,为读者在计算机上进行程序的编辑、调试和运行进行详细的指导。对于每个实验,列出了实验目的、实验知识内容提要、实验的具体内容以及实验完成后的思考问题。通过这些实验,提高读者的实际动手能力。
本书条理清楚、语言流畅、通俗易懂,实用性强,既可以作为高等院校应用型本科专业学生的教材,也可以供自学者以及参加C语言计算机等级考试者阅读使用。
C语言是广泛使用的一种计算机语言,由于它具有功能丰富、灵活性强、可移植性好、语言简洁、应用面广等特性,所以深受广大用户的喜爱。
初学C语言的人,可能感觉学起来比较吃力,具体表现为:不知该如何理解C语言的概念,如何正确使用C语言的语句和语法,如何设计编写程序,如何综合运用C语言知识处理实际问题。有鉴于此,为了帮助读者学好C语言,顺利通过各级各类相关考试,并能熟练将其运用于实际工作,我们组织长期从事C语言教学工作的教师,编写了这本《C语言程序设计学习指导与实验教程(第三版)》。
本书分为两方面内容,一方面是为读者提供C语言的学习指导,另一方面是C语言的实验教程。在学习指导部分,对C语言各章知识的要点和难点进行了整理归纳和深入分析,以使读者明确各章应该着重掌握的知识和深入理解的问题。在学习指导部分,选择了一些典型例题进行分析,以使读者理解各章知识,学会灵活运用各章知识。在学习指导部分,选编了相应练习题,每道题基本上都给出了参考答案。这些练习题既可以训练读者去理解和掌握C语言的基本概念与基本语句,又可以训练读者编写程序、学习编程的方法和技巧。对于每一道编写程序题,本书只给出了一种参考答案,因为每个问题一般都有多种编程方法,所以读者不要受参考答案的限制。在实验教程部分,介绍了C语言开发软件系统C-Free的使用方法;根据C语言的教学内容,本书设计了11个上机练习实验,为读者在计算机上进行程序的编辑、运行和调试进行详细的指导。在实验教程部分,对于每个实验,本书均列出了该实验要达到的目的、该实验所涉及的C语言知识要点、该实验要做的具体内容以及实验完成后的思考问题。认真完成这些实验,能够极大地提高读者的编程能力。
除主编和副主编外,参加本书编写工作的还有王广伟、乐天、江有福、叶其宏、李鑫、朱本浩、毕振波、郑芸、宋广军、张威、吴远红、侯志凌、顾沈明、高禹、崔振东、黄海峰、管林挺等。
由于编者水平有限,书中难免存在错误与不足之处,诚恳欢迎读者批评指正。
编者
2015年12月
第1篇 C语言程序设计学习指导
第1章 C语言概述 1
1.1 本章要点 1
1.1.1 C语言的特点 1
1.1.2 C语言程序的结构 1
1.1.3 C语言源程序的编辑、编译、连接和运行 1
1.2 习题 2
1.3 习题参考答案 2
第2章 数据类型、运算符和表达式 3
2.1 本章要点 3
2.1.1 C语言的数据类型 3
2.1.2 标识符 3
2.1.3 常量 3
2.1.4 变量 4
2.1.5 数据类型的转换 4
2.1.6 C语言运算符的优先级和结合性 5
2.1.7 算术运算符和算术表达式 6
2.1.8 自增运算符和自减运算符 6
2.1.9 赋值运算符和赋值表达式 6
2.1.10 复合赋值运算符 6
2.1.11 逗号运算符 6
2.2 本章难点 6
2.2.1 运算符的优先级 6
2.2.2 运算符的结合性 7
2.2.3 复合赋值运算 7
2.2.4 赋值类型转换 7
2.3 例题分析 8
2.4 习题 9
2.4.1 单项选择题 9
2.4.2 填空题 12
2.4.3 阅读程序写结果题 13
2.4.4 编写程序题 15
2.5 习题参考答案 15
2.5.1 单项选择题答案 15
2.5.2 填空题答案 15
2.5.3 阅读程序写结果题答案 16
2.5.4 编写程序题参考答案 16
第3章 程序设计初步 17
3.1 本章要点 17
3.1.1 格式输入函数scanf() 17
3.1.2 格式输出函数printf() 18
3.1.3 单字符输入函数getchar() 18
3.1.4 单字符输出函数putchar() 18
3.1.5 赋值语句 19
3.1.6 复合语句和空语句 19
3.1.7 顺序结构 19
3.2 本章难点 20
3.2.1 printf()函数中的格式字符、附加格式符和转义符 20
3.2.2 scanf()函数中的格式字符和附加格式符 20
3.3 例题分析 21
3.4 习题 22
3.4.1 单项选择题 22
3.4.2 填空题 24
3.4.3 阅读程序写结果题 26
3.4.4 编写程序题 26
3.5 习题参考答案 27
3.5.1 单项选择题答案 27
3.5.2 填空题答案 27
3.5.3 阅读程序写结果题答案 28
3.5.4 编写程序题参考答案 28
第4章 选择结构程序的设计 31
4.1 本章要点 31
4.1.1 关系运算符与关系表达式 31
4.1.2 逻辑运算符与逻辑表达式 31
4.1.3 二分支选择结构——if语句 32
4.1.4 条件运算符和条件表达式 33
4.1.5 多分支选择结构——switch语句 34
4.2 本章难点 34
4.2.1 if语句的嵌套 34
4.2.2 条件表达式的使用 35
4.2.3 switch语句和break语句的使用 35
4.3 例题分析 36
4.4 习题 38
4.4.1 单项选择题 38
4.4.2 填空题 41
4.4.3 阅读程序写结果题 42
4.4.4 编写程序题 44
4.5 习题参考答案 44
4.5.1 单项选择题答案 44
4.5.2 填空题答案 45
4.5.3 阅读程序写结果题答案 45
4.5.4 编写程序题参考答案 45
第5章 循环结构程序的设计 48
第6章 数组 72
第7章 函数 95
第8章 预处理命令 113
第9章 指针 124
第10章 结构体与其他数据类型 150
第11章 位运算 179
第12章 文件 188
第2篇 C语言程序设计实验教程
实验一 熟悉C-Free的运行环境和开发C程序的步骤 208
实验二 数据类型、运算符、表达式 215
实验三 简单C程序设计 219
实验四 选择结构程序设计 222
实验五 循环结构程序设计 226
实验六 数组的应用(一) ——数值数据的数组 229
实验七 数组的应用(二)——字符数据的数组 232
实验八 函数 235
实验九 指针 238
实验十 结构体与共用体 241
实验十一 文件 244