您好,欢迎来到南京大学出版社官网!请【登录】【免费注册】

返回首页 | 加入我们

C语言程序设计案例教程

C语言程序设计案例教程 本书第1、2章介绍了C语言的发展及特点和C语言的基本数据类型;第3~5章介绍了结构化程序设计的三种基本结构(顺序结构、选择结构和循环结构);第7章介绍了函数的定义和使用;第6、9、10章介绍了数据的构造类型(包括数组、字符串、结构体和共同体等)和指针类型;第8、11章介绍了编译预处理和文件的概念及文件的基本操作;第12章介绍了位运算的基本知识。本书的目标是让读者深刻理解和掌握C语言的语法规则及编程特点,克服“懂C语言,但不会做题、不会编程序”的通病。 作者根据课程要求,结合C语言程序设计的教学经验,并参考了大量相关同类教材,对多年来的讲稿进行了精心的总结、修改和整理,编成本书。 本书可作为高等院校C语言程序设计课程的教材,也可供准备参加计算机等级考试和考研的读者阅读参考,同时也可作为工程技术人员和计算机爱好者的参考用书。
系列名:高等院校"十三五"规划教材
作者:高璐,张娟 编辑:王秉华/吴汀0 ISBN:978-7-305-17482-7
出版时间:201608 字数:414 定价:36.00
开本:16开 页数:272 装订:平装
版次:1 CIP分类号:TP  
 

作者简介

高璐,哈尔滨信息工程学院软件学院副院长,有丰富的计算机专业教学经验.张娟,哈尔滨信息工程学院讲师,从教多年.

内容简介

本书第1、2章介绍了C语言的发展及特点和C语言的基本数据类型;第3~5章介绍了结构化程序设计的三种基本结构(顺序结构、选择结构和循环结构);第7章介绍了函数的定义和使用;第6、9、10章介绍了数据的构造类型(包括数组、字符串、结构体和共同体等)和指针类型;第8、11章介绍了编译预处理和文件的概念及文件的基本操作;第12章介绍了位运算的基本知识。本书的目标是让读者深刻理解和掌握C语言的语法规则及编程特点,克服“懂C语言,但不会做题、不会编程序”的通病。 作者根据课程要求,结合C语言程序设计的教学经验,并参考了大量相关同类教材,对多年来的讲稿进行了精心的总结、修改和整理,编成本书。 本书可作为高等院校C语言程序设计课程的教材,也可供准备参加计算机等级考试和考研的读者阅读参考,同时也可作为工程技术人员和计算机爱好者的参考用书。

目录

第1章  C语言概述	1
1.1  C语言的发展及特点	1
1.1.1  C语言的发展	1
1.1.2  C语言的特点	2
1.2  初步认识C语言程序	3
1.2.1  C语言程序的格式	5
1.2.2  C语言程序的构成	5
1.2.3  C语言程序的基本要求	5
1.3  软件开发方法	5
1.3.1  软件开发方法	5
1.3.2  算法	6
1.3.3  结构化程序设计	6
1.4  C语言程序上机调试步骤和方法	8
1.5  小结	10
习题	11
第2章  C语言程序设计的初步
        知识	12
2.1  C语言的数据类型	12
2.2  标识符	13
2.2.1  系统定义标识符	13
2.2.2  用户定义标识符	13
2.3  常量	14
2.3.1  整型常量	14
2.3.2  实型常量	15
2.3.3  字符常量	15
2.3.4  字符串常量	17
2.3.5  符号常量	17
2.4  变量	18
2.4.1  变量名称	18
2.4.2  变量的类型	18
2.4.3  变量的赋值	20
2.5  运算符与表达式	20
2.5.1  算术运算符和算术
表达式	21
2.5.2  赋值运算符和赋值
表达式	21
2.5.3  关系运算符和关系
表达式	22
2.5.4  逻辑运算符和逻辑
表达式	23
2.5.5  条件运算符和条件
表达式	24
2.5.6  逗号运算符和逗号
表达式	25
2.6  自增(自减)运算符及C语言
     运算符的优先级别	25
2.6.1  自增、自减运算符	25
2.6.2  C语言运算符的优先级
与结合性	26
2.7  不同类型数据间的混合运算
     (包含数据类型转换)	27
2.7.1  自动类型转换	27
2.7.2  强制类型转换	28
2.8  小结	28
习题	28
第3章  顺序结构程序设计	31
3.1  任务1——将英里转换为公里	31
3.2  C语句	34
3.3  数据的输出	36
3.3.1  数据输入输出的概念及
在C语言中的实现	36
3.3.2  字符输出函数(putchar
函数)	37
3.3.3  格式输出函数(printf
函数)	38
3.4  数据的输入	42
3.4.1  字符输入函数(getchar
函数)	42
3.4.2  格式输入函数(scanf
函数)	43
3.5  小型案例	48
3.6  小结	51
习题	52
第4章  选择结构程序设计	54
4.1  任务2——有节约要求的
     水费问题	54
4.2  if语句	56
4.2.1  if语句的三种形式	56
4.2.2  if语句的嵌套	60
4.3  switch语句	64
4.4  小型案例	66
4.5  小结	68
习题	69
第5章  循环结构程序设计	73
5.1  任务3——公司员工薪水计算	73
5.2  while语句	76
5.3  do-while语句	77
5.4  for语句	79
5.5  循环嵌套	84
5.6  goto语句以及用goto语句
     构成循环	88
5.7  break语句和continue语句	89
5.7.1  break语句	89
5.7.2  continue语句	90
5.8  小型案例	92
5.9  小结	97
习题	98
第6章  数组	101
6.1  任务4——用冒泡法对10
     个数排序	101
6.2  一维数组	103
6.2.1  一维数组的定义	103
6.2.2  一维数组元素的引用	104
6.2.3  一维数组的初始化	104
6.2.4  一维数组的应用	105
6.3  二维数组	106
6.3.1  二维数组的定义	106
6.3.2  二维数组元素的引用	107
6.3.3  二维数组的初始化	107
6.3.3  二维数组的应用	109
6.4  字符数组	111
6.4.1  字符数组的定义及
初始化	111
6.4.2  字符数组元素的引用	112
6.4.3  字符串数组	113
6.5  小型案例	121
6.6  小结	124
习题	124
第7章  函数	127
7.1  任务5——从身份证号码中间
     提取 出生日期、性别、年龄
     等信息	127
7.2  函数的概念	131
7.2.1  库函数的使用	132
7.2.2  函数的定义	132
7.2.3  函数的声明	133
7.3  函数的参数和返回值	134
7.3.1  函数的参数	134
7.3.2  函数的返回值	134
7.4  函数的参数传递方式	135
7.4.1  值的传递	135
7.4.2  地址的传递	136
7.5  函数的调用	138
7.5.1  函数的一般调用	138
7.5.2  函数的嵌套调用	138
7.5.3  函数的递归调用	139
7.6  变量的作用域和存储类型	140
7.6.1  变量的作用域	140
7.6.2  变量的存储类型	140
7.7  函数的作用范围	143
7.7.1  内部函数	144
7.7.2  外部函数	144
7.8  小型案例	144
7.9  小结	146
习题	147
第8章  编译预处理	150
8.1  任务6——求解某校园圆形
     花坛的圆周长及圆面积	150
8.2  宏定义	152
8.2.1  无参宏	152
8.2.2  带参宏	153
8.2.3  终止宏定义	154
8.3  文件包含命令	154
8.4  条件编译	156
8.4.1  带#if、#else和#endif
标识的	156
8.4.2  带#ifdef标识的	156
8.4.3  带#ifndef标识的	156
8.5  小型案例	157
8.6  小结	159
习题	159
第9章  指针	161
9.1  任务7——利用指针变量完成
     税率的调整并打印前后结果	161
9.2  指针变量	163
9.2.1  指针变量的定义	164
9.2.2  指针变量的引用	164
9.2.3  指针变量的运算	167
9.3  指针与数组	172
9.3.1  指针与一维数组	173
9.3.2  指针与二维数组	174
9.3.3  指针数组	177
9.4  指针与字符串	179
9.4.1  用字符数组存放一个
字符串	179
9.4.2  字符指针指向一个
字符串	180
9.4.3  字符数组和字符指针
变量的区别	182
9.5  指针与函数	184
9.5.1  指向函数的指针	184
9.5.2  指针函数	185
9.5.3  指针变量作为函数的
参数	186
9.5.4  数组名作为函数的参数	188
9.5.5  指向函数的指针作为
函数的参数	189
9.6  指向指针的指针变量	190
9.7  main()函数的形参和void指针	191
9.7.1  指针数组作为main函数
的形参	191
9.7.2  指向void的指针变量	193
9.8  小型案例	194
9.9  小结	195
习题	196
第10章  构造数据类型	200
10.1  任务8——输出一批学生的
      基本信息	200
10.2  结构体	203
10.2.1  结构体定义	203
10.2.2  结构体变量	206
10.2.3  结构体变量的使用	208
10.3  结构体与函数	209
10.3.1  结构变量与数组结构
作为函数的参数	209
10.3.2  结构变量作为函数的
返回值	210
10.4  结构体与指针	211
10.4.1  结构体变量指针	211
10.4.2  结构体数组指针	212
10.5  链表	214
10.5.1  链表概述	214
10.5.2  链表的基本操作	215
10.6  共用体	216
10.7  枚举类型	217
10.8  typedef类型声明	219
10.9  小型案例	220
10.10  小结	222
习题	223
第11章  文件	226
11.1  任务9——磁盘文件信息复制	226
11.2  文件类型指针	230
11.3  文件的基本操作	231
11.3.1  文件的打开	231
11.3.2  文件的关闭	234
11.3.3  文件读函数	234
11.3.4  文件写函数	241
11.4  文件的定位函数	246
11.4.1  rewind()函数	247
11.4.2  fseek()函数和随机
读写	247
11.5  文件出错检测函数	249
11.5.1  ferror()函数	249
11.5.2  clearerr()函数	250
11.6  小型案例	250
11.7  小结	253
习题	254
第12章  位运算	257
12.1  位的运算	257
12.1.1  “按位与”运算符(&)	257
12.1.2  “按位或”运算符(|)	258
12.1.3  “异或”运算符(∧)	259
12.1.4  “取反”运算符(~)	260
12.1.5  左移运算符(<<)	261
12.1.6  右移运算符(>>)	261
12.1.7  位运算赋值运算符	262
12.1.8  不同长度的数据进行
位运算	262
12.2  位段	262
12.3  小型案例	266
12.4  小结	268
习题	269
附录	272
参考文献	276