目录
目录
第1章程序设计和C语言1
1.1计算机与程序、程序设计语言1
1.2C语言的特点2
1.3简单的C语言程序3
1.4C语言程序的结构6
1.5运行C程序的步骤与方法8
1.6程序设计的任务10
1.7算法——程序的灵魂11
1.7.1程序是什么11
1.7.2什么是算法12
1.7.3怎样表示一个算法13
1.8结构化程序设计方法19
1.9学习程序设计,培养科学思维21
本章小结22
习题23
第2章最简单的C程序设计——顺序程序设计25
2.1顺序程序设计举例25
2.2数据的类型及存储形式29
2.2.1C语言的数据类型29
2.2.2数据的表现形式——常量和变量29
2.2.3整型数据31
2.2.4字符型数据36
2.2.5浮点型数据41
2.3用表达式进行数据的运算43
2.3.1C表达式43
2.3.2C运算符44
2.3.3运算符的优先级与结合性46
2.3.4不同类型数据间的混合运算46
2.3.5强制类型转换47
2.4最常用的C语句——赋值语句48
2.4.1C语句综述48
2.4.2赋值表达式50
2.4.3赋值语句53
2.5数据的输入输出56
2.5.1C语言中输入输出的概念56
2.5.2用printf函数输出数据57
2.5.3用scanf函数输入数据62
2.5.4字符数据的输入输出65
本章小结67
习题68
第3章选择结构程序设计71
3.1简单的选择结构程序71
3.2选择结构中的关系运算73
3.2.1关系运算符及其优先次序73
3.2.2关系表达式73
3.3选择结构中的逻辑运算74
3.3.1逻辑运算符及其优先次序75
3.3.2逻辑表达式76
3.4用if语句实现选择结构78
3.4.1if语句的三种形式78
3.4.2if语句的嵌套80
3.5用条件表达式实现选择结构83
3.6利用switch语句实现多分支选择结构86
3.7选择结构程序综合举例88
本章小结94
习题94
第4章循环结构程序设计96
4.1程序需要循环96
4.2用while语句和do…while语句实现循环96
4.2.1用while语句实现循环96
4.2.2用do…while语句实现循环98
4.2.3while循环和do…while循环的比较99
4.2.4递推与迭代101
4.3用for语句实现循环104
4.3.1for语句的执行过程104
4.3.2for语句的各种形式106
4.3.3for循环应用举例108
4.4循环的嵌套110
4.5用break语句和continue语句改变循环状态110
4.5.1用break语句提前退出循环110
4.5.2用continue语句提前结束本次循环111
4.6几种循环的比较113
4.7循环程序举例113
本章小结116
习题117
第5章利用数组处理批量数据119
5.1数组的作用119
5.2怎样定义和引用一维数组120
5.2.1怎样定义一维数组120
5.2.2怎样引用一维数组元素120
5.2.3一维数组的初始化121
5.2.4利用一维数组的典型算法——递推与排序122
5.3怎样定义和引用二维数组125
5.3.1怎样定义二维数组125
5.3.2怎样引用二维数组的元素126
5.3.3二维数组程序举例126
5.3.4二维数组的初始化129
5.4利用字符数组处理字符串数据130
5.4.1怎样定义字符数组 130
5.4.2字符数组的初始化131
5.4.3引用字符数组的元素132
5.4.4字符串和字符串结束标志133
5.4.5字符数组的输入输出方法134
5.4.6有关字符处理的算法136
5.4.7利用字符串处理函数139
本章小结142
习题143
第6章利用函数进行模块化程序设计145
6.1为什么要使用函数145
6.1.1函数是什么145
6.1.2程序和函数146
6.2怎样定义函数147
6.2.1为什么要定义函数147
6.2.2怎样定义无参函数148
6.2.3怎样定义有参函数148
6.3函数参数和函数的值149
6.3.1形式参数和实际参数 149
6.3.2函数的返回值150
6.4函数的调用151
6.4.1函数调用的一般形式151
6.4.2调用函数的方式152
6.4.3对被调用函数的声明和函数原型152
6.5函数的嵌套调用155
6.6函数的递归调用157
6.6.1什么是函数的递归调用157
6.6.2递归算法分析157
6.6.3用递归函数实现递归算法160
6.7数组作为函数参数164
6.8函数应用举例——编写排序程序168
6.9变量的作用域和生存期171
6.9.1局部变量171
6.9.2全局变量171
6.9.3变量的存储方式和生存期172
6.9.4作用域与生存期小结176
6.10关于变量的声明和定义178
本章小结179
习题180
第7章善于使用指针182
7.1什么是指针182
7.2变量的指针和指向变量的指针变量184
7.2.1怎样定义指针变量184
7.2.2怎样引用指针变量187
7.2.3指针变量作为函数参数189
7.3通过指针引用数组194
7.3.1数组元素的指针194
7.3.2在引用数组元素时指针的运算195
7.3.3通过指针引用数组元素196
7.3.4用数组名作函数参数200
7.4通过指针引用字符串206
7.4.1引用字符串的方法206
7.4.2字符指针作函数参数209
7.4.3对使用字符指针变量和字符数组的归纳212
本章小结215
习题219
第8章根据需要创建数据类型221
8.1定义和引用结构体变量221
8.1.1怎样创建结构体类型221
8.1.2怎样定义结构体类型变量 223
8.1.3引用结构体变量225
8.2使用结构体数组228
8.2.1定义结构体数组228
8.2.2结构体数组应用举例230
8.3结构体指针231
8.3.1指向结构体变量的指针231
8.3.2指向结构体数组的指针233
8.3.3用结构体变量和结构体变量的指针作函数参数234
8.4使用枚举类型237
8.4.1什么是枚举和枚举变量237
8.4.2枚举型数据应用举例239
本章小结242
习题242
第9章利用文件保存数据244
9.1C文件的有关概念244
9.1.1什么是文件244
9.1.2文件名245
9.1.3文件的分类245
9.1.4文件缓冲区246
9.1.5文件类型指针246
9.1.6文件位置标记247
9.2文件的打开与关闭248
9.2.1用fopen函数打开文件248
9.2.2用fclose函数关闭文件249
9.3文件的顺序读写250
9.3.1向文件读写一个字符250
9.3.2向文件读写一个字符串252
9.3.3对文件进行格式化读写255
9.3.4按二进制方式对文件进行读写256
9.4文件的随机读写256
9.4.1文件位置标记的定位256
9.4.2对文件进行随机读写258
本章小结259
习题261
附录A常用字符与ASCII码对照表262
附录BC语言中的关键字263
附录C运算符和结合性264
附录DC语言常用语法提要267
附录EC库函数 272
参考文献279