《C语言程序设计项目化教程》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:周雅静,钱冬云,邢小英,徐济惠编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2014
  • ISBN:9787121234880
  • 页数:288 页
图书介绍:本书以学生成绩管理系统为主线,通过一个个任务,引出C语言的基本知识,再辅以别的实例进行深化、理解,最后通过让学生在课堂上逐步实现工资管理系统的相关开发来训练学生对C语言知识的熟练运用。本书可作为高职高专计算机相关专业程序设计课程的教材。

项目1 学生成绩的总分与平均分的计算 1

任务1-1 学生成绩的输入/输出 2

任务提出及实现 2

1.任务提出 2

2.具体实现 2

相关知识 2

1.C语言的结构 2

2.C语言运行环境及运行方法 3

3.数据类型 4

4.格式输出函数——printf()函数 5

5.格式输入函数——scanf()函数 7

知识扩展 9

1.转义字符 9

2.格式化输出 9

3.单个字符的输入/输出 11

4.字符串常量 12

举一反三 13

实践训练 15

初级训练 15

深入训练 16

任务1-2 总分及平均分的计算 18

任务提出及实现 18

1.任务提出 18

2.具体实现 18

相关知识 19

1.算术运算符和算术表达式 19

2.赋值运算和赋值表达式 20

3.自增、自减及逗号运算符 21

举一反三 23

实践训练 27

初级训练 27

深入训练 28

综合训练一 30

项目2 输入学生成绩转化为等级 32

任务2-1 输入学生成绩,判断其合法性 33

任务要求与实现 33

1.任务要求 33

2.具体实现 33

相关知识 34

1.关系运算符与关系表达式 34

2.逻辑运算符与逻辑表达式 35

3.条件语句 36

4.条件运算符与条件表达式 39

实践训练 40

初级训练 40

深入训练 42

任务2-2 输入学生成绩转化为等级 43

任务提出及实现 43

1.任务提出 43

2.具体实现 43

相关知识 45

1.if语句的嵌套 45

2.switch语句 47

举一反三 50

实践训练 55

初级训练 55

深入训练 58

综合练习二 60

项目3 学生成绩的分组汇总 63

任务3-1 求一个小组学生成绩的总分及平均分 64

任务提出与实现 64

1.任务提出 64

2.具体实现 64

相关知识 65

1.while循环 65

2.do...while语句 69

3.for语句 71

知识扩展 74

1.for语句的多种表示方法 74

2.break语句 75

举一反三 76

实践训练 81

初步训练 82

深入训练 84

任务3-2 求每个小组学生成绩的总分及平均分 86

任务提出与实现 86

1.任务提出 86

2.具体实现 86

相关知识 87

1.常见的循环嵌套 87

2.循环嵌套的运用 88

3.循环嵌套的实例 90

举一反三 91

实践训练 93

初级训练 93

深入训练 95

综合练习三 96

项目4 学生成绩的排序 99

任务4-1 多位学生一门课成绩的输入/输出 100

任务提出及实现 100

1.任务提出 100

2.具体实现 100

相关知识 100

1.一维数组的定义 100

2.一维数组的引用 101

3.一维数组的初始化 103

举一反三 103

实践训练 106

初步训练 106

深入训练 108

任务4-2 多个学生一门课成绩的排序 109

任务提出及实现 109

1.任务提出 109

2.具体实现(为了程序运行方便,假设只有10位学生) 109

相关知识 110

1.求最高分 110

2.排序 111

举一反三 113

实践训练 116

初级训练 117

深入训练 120

任务4-3 学生姓名的输入/输出 122

任务提出与实现 122

1.任务提出 122

2.具体实现(为了程序运行简单,假设只有5位同学) 122

相关知识 123

1.一维字符数组 123

2.二维字符数组 126

知识扩展 127

1.字符串比较函数strcmp() 127

2.复制字符串函数strcpy() 127

举一反三 128

实践训练 131

初级训练 131

深入训练 132

任务4-4 多个学生多门课成绩的排序 134

任务提出及实现 134

1.任务提出 134

2.具体实现(为了在程序运行时方便,所以假设只有5位学生) 134

相关知识 136

1.二维数组的定义 136

2.二维数组的引用 136

3.二维数组的初始化 136

4.二维数组的应用 137

举一反三 140

实践训练 143

初步训练 143

深入训练 144

综合练习四 145

项目5 根据条件进行学生成绩汇总 147

任务5-1 统计小组一门课程的总分及平均分 149

任务提出及实现 149

1.任务提出 149

2.具体实现 149

相关知识 150

1.无参函数 150

2.空函数 154

3.有参函数 154

举一反三 157

实践训练 159

初级训练 159

深入训练 164

任务5-2 统计小组若干门课程的总分及平均分 166

任务提出与实现 166

1.任务提出 166

2.具体实现 166

相关知识 167

1.嵌套函数 167

2.嵌套函数应用 168

知识扩展 169

1.递归函数 169

2.递归函数的应用 169

举一反三 171

实践训练 173

初级训练 173

深入训练 177

任务5-3 输出排序后小组三门课成绩单 178

任务提出与实现 178

1.任务提出 178

2.具体实现(假设本小组只有5位同学) 178

相关知识 181

1.数组名作为函数参数 181

2.数组名作为函数参数的应用 183

举一反三 185

实践训练 187

初级训练 187

深入训练 189

综合训练五 190

项目6 用指针优化学生成绩排名 194

任务6-1 了解指针 194

任务提出与实现 194

1.任务提出 194

2.具体实现 195

相关知识 195

1.地址和指针的概念 195

2.指向变量的指针变量 196

3.指针变量作为函数参数 199

举一反三 200

实践训练 202

任务6-2 用指针优化全班同学一门课成绩的输入/输出 206

任务提出及实现 206

1.任务提出 206

2.具体实现(以10位学生为例) 206

相关知识 207

1.指向数组元素的指针 207

2.一维数组元素的指针访问方式 208

举一反三 211

实践训练 212

任务6-3 用指针优化某班同学三门课成绩的输入/输出 213

任务提出及实现 213

1.任务提出 213

2.具体实现 213

相关知识 214

1.二维数组的指针访问方式 214

2.二维数组的指针访问应用 215

举一反三 216

实践训练 217

任务6-4 用指针实现输出最高分的记录 219

任务提出及实现 219

1.任务提出 219

2.具体实现 219

相关知识 221

知识扩展 224

1.字符串的表示形式 225

2.用指针变量来实现对字符串的访问 226

举一反三 227

实践训练 229

综合训练六 232

项目7 学生成绩单制作 234

任务7-1 用结构体数组进行学生信息的输入/输出 235

任务提出及实现 235

1.任务提出 235

2.具体实现(为了程序运行方便,假设有5位同学) 235

相关知识 236

1.结构体类型 236

2.结构体变量的引用 237

3.结构体变量的初始化 238

4.结构体数组 239

5.指向结构体类型数据的指针 241

举一反三 243

实践训练 246

任务7-2 排序后的学生成绩单 249

任务提出及实现 249

1.任务提出 249

2.具体实现(为了程序运行方便,假设只有5位同学) 250

相关知识 251

举一反三 253

实践训练 256

综合训练七 259

项目8 学生成绩文件管理 261

任务8-1 将学生成绩顺序读写到文件中 261

任务提出及实现 261

1.任务提出 261

2.具体实现(为了程序运行方便,假设只有10位同学) 262

相关知识 263

1.文件的打开/关闭 263

2.文件的读写 265

举一反三 274

实践训练 275

任务8-2 将学生成绩随机读写到文件中 276

任务提出与实现 276

1.任务提出 276

2.具体实现(为了程序运行方便,假设只有10位学生) 276

相关知识 277

1.指针指向文件开头的函数(rewind()函数) 278

2.fseek()函数 278

举一反三 280

实践训练 281

综合训练八 281

附录A 运算符表 283

附录B 常用标准库函数 284

1.数学标准库函数(函数原型:math.h) 284

2.输入/输出库函数(函数原型:stdio.h) 284

3.字符函数与字符串函数(函数原型:string.h) 285

4.其他函数(函数原型:stdlib.h) 286

附录C ASCII字符编码表 287

参考文献 288