目 录
第1章 程序设计基础 1
1.1 学习指导 1
1.1.1 计算机中数据的表示 1
1.1.2 算法和数据结构的基本概念 7
1.1.3 结构化程序设计的基本概念 8
1.2 学习与思考 9
第2章 C语言与C程序概述 12
2.1 学习指导 12
2.1.1 C语言简介 12
2.1.2 简单的C程序介绍 12
2.2 C程序的开发环境及其使用 14
2.2.1 C程序开发过程 14
2.2.2 VC++环境下运行C程序 15
2.3 上机实践:简单C程序的编辑、编译、链接和运行 18
2.3.1 实验目的 18
2.3.2 实验学时 19
2.3.3 实验内容和步骤 19
第3章 数据类型、运算符和表达式 24
3.1 学习指导 24
3.1.1 C语言的数据类型 24
3.1.2 常量和变量 24
3.1.3 C语言的运算符和表达式 25
3.2 上机实践:基本数据类型、运算符和表达式的使用 26
3.2.1 实验目的 26
3.2.2 实验学时 27
3.2.3 实验内容和步骤 27
第4章 顺序结构程序设计 34
4.1 学习指导 34
4.1.1 C语言的语句 34
4.1.2 输入和输出操作 34
4.2 上机实践:C语言的顺序结构程序设计 37
4.2.1 实验目的 37
4.2.2 实验学时 37
4.2.3 实验内容和步骤 37
第5章 选择结构程序设计 41
5.1 学习指导 41
5.1.1 选择结构的基本概念与使用方法 41
5.1.2 switch…case的使用方法 46
5.2 上机实践:C语言的选择结构程序设计 47
5.2.1 实验目的 47
5.2.2 实验学时 47
5.2.3 实验内容和步骤 47
第6章 循环结构程序设计 50
6.1 学习指导 50
6.1.1 循环结构的基本概念与使用方法 50
6.1.2 嵌套循环的使用方法 53
6.2 上机实践:C语言的循环结构程序设计 55
6.2.1 实验目的 55
6.2.2 实验学时 56
6.2.3 实验内容和步骤 56
第7章 数组 59
7.1 学习指导 59
7.1.1 数组的基本概念和数组元素之间的关系 59
7.1.2 数组的初始化与数组元素的引用 61
7.1.3 数组的应用 61
7.2 上机实践:数组 70
7.2.1 实验目的 70
7.2.2 实验学时 70
7.2.3 实验内容和步骤 70
第8章 函数基础 76
8.1 学习指导 76
8.1.1 函数的基本概念、定义与调用方法 76
8.1.2 函数的参数与返回值 77
8.2 上机实践:函数基础 80
8.2.1 实验目的 80
8.2.2 实验学时 80
8.2.3 实验内容和步骤 80
第9章 指针基础 83
9.1 学习指导 83
9.1.1 指针的基本概念 83
9.1.2 指针与数组的关系 84
9.1.3 指向指针的指针 86
9.1.4 指向字符串的指针 87
9.2 上机实践:指针基础 88
9.2.1 实验目的 88
9.2.2 实验学时 88
9.2.3 实验内容和步骤 88
第10章 数组、函数和指针的高级应用 91
10.1 学习指导 91
10.1.1 函数的递归定义 91
10.1.2 数组作为函数参数的使用 93
10.1.3 变量的存储类型与程序的多文件结构 95
10.1.4 指向函数的指针 98
10.1.5 指针作为函数的参数以及返回指针的函数 99
10.1.6 多文件结构的C程序编译、链接与运行 101
10.2 上机实践:数组、函数和指针的高级应用 102
10.2.1 实验目的 102
10.2.2 实验学时 102
10.2.3 实验内容和步骤 102
第11章 结构体、共用体、枚举类型 111
11.1 学习指导 111
11.1.1 结构体的基本概念、定义与
引用方法 111
11.1.2 结构体数组 114
11.1.3 结构体变量与指针 115
11.1.4 链表 116
11.1.5 共用体 116
11.1.6 枚举类型 117
11.2 上机实践:结构体、共用体、枚举类型 118
11.2.1 实验目的 118
11.2.2 实验学时 118
11.2.3 实验内容和步骤 118
第12章 文件 121
12.1 学习指导 121
12.1.1 文件的基本概念、定义与引用方法 121
12.1.2 fread()函数与fwrite()函数 123
12.2 上机实践:文件 125
12.2.1 实验目的 126
12.2.2 实验学时 126
12.2.3 实验内容和步骤 126
第13章 编译预处理 127
13.1 学习指导 127
13.1.1 #define 127
13.1.2 #include 128
13.1.3 #if、#elif、#else和#endif 129
13.2 上机实践:编译预处理 130
13.2.1 实验目的 130
13.2.2 实验参考学时 130
13.2.3 实验内容和步骤 131
第14章 C语言的应用——典型数据结构及其实现 132
14.1 学习指导 132
14.1.1 顺序表的C语言实现 132
14.1.2 线性链表的C实现 137
14.1.3 栈的C语言实现——顺序栈与链栈 141
14.1.4 二叉树的二叉链表C语言实现 145
14.2 上机实践:C语言的应用——典型数据结构及其实现 149
14.2.1 实验目的 149
14.2.2 实验学时 150
14.2.3 实验内容和步骤 150
第15章 考试模拟试卷 164
15.1 模拟试卷1 164
15.2 模拟试卷2 169
15.3 模拟试卷3 175
15.4 模拟试卷4 182
15.5 模拟试卷5 187
15.6 模拟试卷6 194
15.7 模拟试卷7 201
15.8 模拟试卷8 208
15.9 模拟试卷9 215
15.10 模拟试卷10 223
第16章 自测试卷 231
16.1 自测试卷1 231
16.2 自测试卷2 238
16.3 自测试卷3 243
16.4 自测试卷4 250
16.5 自测试卷5 256
16.6 自测试卷6 261
16.7 自测试卷7 268
16.8 自测试卷8 273
16.9 自测试卷9 279
16.10 自测试卷10 288
16.11 自测试卷11 290
16.12 自测试卷12 295
参考文献 301
附录 302
附录A 福建省高等学校计算机应用水平等
级考试二级(C语言)考试大纲 302
附录B 全国计算机等级考试二级
C语言考试大纲 302
附录C 全国计算机二级(C语言)笔试
模拟试题及参考答案 302