C语言程序设计教程
书 号:9787113224776
丛 书 名:普通高等学校“十三五”规划教材
作 者:何颖刚,林丽娜,唐基宏,叶晓红
译 者:
开 本:16开
装 帧:平装
正文语种:
出 版 社:中国铁道出版社有限公司
定 价:32元
-
内容简介
本书从程序设计的实际能力培养出发,例题丰富,深入浅出,将理论与实践有机结合,主要讲授C语言程序设计基础知识,包括C语言数据类型、常量、变量、程序结构、程序控制语句、数组、指针、函数、自定义数据类型、文件等重要内容,旨在满足应用型本科院校C语言程序设计课程教学与实验的需求,强化学生的动手能力,培养学生的逻辑思维能力。
本书适合作为普通高等学校各专业“C语言程序设计”课程的教材,也可供C语言自学者或参加各种C语言考试的读者及各类工程技术人员学习使用。 -
前言
C语言是一门通用计算机编程语言,是当前国内外使用最广泛的程序设计语言之一。C语言具有语言简洁、功能强大、表达力强、使用灵活方便、应用面广、目标效率高、可移植性好等特点。因此,C语言在单片机以及嵌入式系统开发和应用软件的开发中得到了广泛应用。
本书旨在满足应用型本科院校C语言程序设计课程教学与实验的需求,强化学生的动手能力,培养学生的逻辑思维能力。要求学生在掌握一定的程序设计基础理论的同时,把程序设计技能应用于实际的问题解决当中,从而熟练地进行程序设计。
本教材由何颖刚、林丽娜、唐基宏、叶晓红主编,魏德志、黄沁芳、郭静、尤亮、周喜、金莎、孙海梦、林幼平、王宇、杨远奇、夏丽丽、王敏参与了编写工作。具体编写分工为:第1章、第4章由林丽娜编写,第2章、第3章由唐基宏编写,第5章、第7章由何颖刚编写,第6章、第8章由叶晓红编写,全书由何颖刚统稿。
参与编写的每一位教师都长期工作在教学第一线,本书汇聚了他们长期积累的丰富的教学经验,希望能对广大学习C语言程序设计的学生有较大帮助。在本书的编写过程中,得到集美大学诚毅学院领导的关心、支持和指导,在此一并表示谢意。
由于编者水平有限,书中疏漏和不足在所难免,恳请读者批评指正。
集美大学诚毅学院计算机教研室
2016年8月 -
目录
第1章 程序设计概述及算法 1
1.1 程序设计和程序设计语言 1
1.1.1 程序及程序设计 1
1.1.2 进制转换 1
1.1.3 程序设计语言 3
1.2 算法及算法表示 5
1.2.1 算法的概念 5
1.2.2 算法的表示 5
1.3 结构化程序设计 7
1.4 C语言的历史及特点 8
1.4.1 C语言的发展历史 8
1.4.2 C语言的特点 9
1.5 C语言程序的结构 9
1.6 Visual C++ 6.0运行环境简介 12
课后习题 15
第2章 C语言编程基础知识 17
2.1 C语言的基本架构 17
2.2 常 量 18
2.2.1 常量的分类 18
2.2.2 用printf()输出常量数据 20
2.3 变 量 22
2.3.1 变量的定义及基本操作 22
2.3.2 用printf()输出变量的值 25
2.4 表 达 式 26
2.4.1 不同的表达式及其值的
计算 26
2.4.2 运算符的优先级和
结合性 28
2.5 用scanf()输入变量的值 29
课后习题 30
第3章 C语言编程基础控制结构 32
3.1 C 语 句 32
3.2 顺序结构编程 33
3.3 选择结构编程 34
3.3.1 if语句的三种结构 34
3.3.2 条件运算符语句 37
3.3.3 switch语句 38
3.4 循环结构编程 39
3.4.1 while语句 40
3.4.2 do...while语句 42
3.4.3 for循环语句 43
3.5 题型举例 45
3.5.1 累加和、累乘积 45
3.5.2 输出具有特殊性质的数 48
3.5.3 求斐波那契数列 50
3.5.4 循环嵌套 51
3.5.5 break语句和continue语句
的使用 54
课后习题 55
第4章 数 组 60
4.1 一维数组 60
4.1.1 一维数组的定义 60
4.1.2 一维数组的初始化 61
4.1.3 一维数组的元素引用 62
4.2 二维数组 63
4.2.1 二维数组的定义 63
4.2.2 二维数组的初始化 63
4.2.3 二维数组的元素引用 64
4.3 数组与常用算法 65
4.3.1 冒泡算法 65
4.3.2 选择算法 67
4.3.3 顺序查找 68
4.3.4 折半查找 68
4.3.5 矩阵运算 70
课后习题 71
第5章 指 针 73
5.1 指针和指针变量 73
5.1.1 指针的概念 73
5.1.2 指针变量的概念 74
5.1.3 指针变量的定义 74
5.1.4 取地址运算符和间接访问
运算符 75
5.1.5 指针变量赋值 78
5.2 指针运算 79
5.2.1 指针与整数的加减量
运算 79
5.2.2 指针与指针的关系运算 79
5.2.3 指针与指针的差值运算 80
5.3 指针与数组 81
5.3.1 一维数组与指针 82
5.3.2 二维数组和行指针 86
5.4 指针与字符串 88
5.4.1 字符串常量、字符串
结束符、字符常量 88
5.4.2 使用字符数组保存
字符串 89
5.4.3 使用字符指针指向
字符串 90
5.4.4 字符串的输入/输出操作 90
5.4.5 字符数组与字符指针使用
方式的比较 91
5.4.6 常用字符串操作函数 92
5.4.7 字符指针、字符数组应用
示例 95
5.5 指针的高级内容 100
5.5.1 指向指针的指针 100
5.5.2 指针数组 101
课后习题 102
第6章 函 数 104
6.1 函数的分类 104
6.2 函数的定义 106
6.3 函数的调用 108
6.3.1 函数的调用方式 109
6.3.2 被调函数的声明 111
6.3.3 函数的参数 113
6.3.4 数组作为函数参数 116
6.3.5 函数的返回值 119
6.3.6 函数的嵌套调用 120
6.3.7 函数的递归调用 121
6.4 变量的作用域与存储类型 126
6.4.1 局部变量 126
6.4.2 全局变量 128
6.5 变量的存储类型 131
6.6 内部函数和外部函数 137
6.6.1 内部函数 137
6.6.2 外部函数 137
课后习题 138
第7章 自定义数据类型 144
7.1 结 构 体 144
7.1.1 结构体的定义 144
7.1.2 结构体数据类型对象的
定义 145
7.1.3 结构体数据类型对象的
初始化 146
7.1.4 结构体变量的存储 147
7.1.5 结构体成员的引用
运算符 148
7.1.6 结构体成员的输入/输出
操作 151
7.1.7 综合示例 152
7.2 共 用 体 153
7.2.1 共用体的定义 153
7.2.2 共用体的存储分配 154
7.2.3 共用体成员的引用 154
7.2.4 共用体的赋值 155
7.2.5 共用体与结构体的区别 156
7.3 typedef自定义数据类型 156
7.4 枚 举 157
7.5 编译预处理 159
7.5.1 宏定义 160
7.5.2 文件包含 161
课后习题 161
第8章 文 件 163
8.1 文件的打开与关闭 164
8.1.1 文件的打开 164
8.1.2 文件的关闭 166
8.2 文件读/写函数 166
8.2.1 fgetc()函数和fputc()
函数 166
8.2.2 fgets()函数和fputs()
函数 170
8.2.3 fread()函数和fwrite()
函数 172
8.2.4 fscanf()函数和fprintf()
函数 173
8.3 文件的定位与随机读/写 175
8.3.1 文件的定位 175
8.3.2 文件的随机读/写 175
8.4 文件的出错检测 176
课后习题 177
附录A 常用字符与ASCII码对照表 179
附录B C语言关键字 180
附录C C语言常用的库函数 181
附录D C语言运算符优先级和
结合性 184
参考文献 186 -
作者介绍
何颖刚,2004-至今在集美大学诚毅学院任教,研究生学历,讲师,专业方向计算机应用,主要担任《大学计算机基础》、《C语言程序设计》、《ASP.NET动态网页设计》等课程的教学,从事教学多年,主要教改项目: 计算机网络课程教改 2013年 院级; 校企合作软件工程专业基础课 课程群深度融合教学改革 2015年院级。 13599907018, 福建厦门集美区集美大道199# 432信箱,350600198102050017。林丽娜,集美大学诚毅学院信息工程系教师,研究生学历 ,讲师,专业方向嵌入式开发,主要担任《Java语言程序设计》、《数据库应用》等课程的教学。唐基宏,集美大学诚毅学院信息工程系教师,研究生学历 ,讲师,专业方向网络技术,主要担任《网络管理与维护》、《计算机网络技术与应用》、《网络技术原理与应用》等课程的教学。叶晓红,集美大学诚毅学院信息工程系教师,研究生学历 ,讲师,专业方向高级程序设计,主要担任《网页设计技术》、《PHP程序设计高级教程》、《动态网页设计》等课程的教学。 -
编辑推荐
-
书评书荐
-
附件下载
图书推荐