C语言程序设计(慕课版)

C语言程序设计(慕课版)
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
2017-05
版次: 1
ISBN: 9787115450265
定价: 49.80
装帧: 其他
开本: 其他
纸张: 胶版纸
页数: 374页
18人买过
  • 本书作为C 语言程序设计的教程,系统全面地介绍了有关C 语言程序设计开发所涉及的各类知识。全
      书共分17 章,内容包括C 语言概述、算法、数据类型、运算符与表达式、常用的数据输入 输出函数、选择
      结构程序设计、循环控制、数组、函数、指针、结构体和共用体、位运算、预处理、文件、存储管理、网络
      套接字编程、综合实例——学生信息管理系统。全书每章内容都与实例紧密结合,有助于学生理解知识、应
      用知识,达到学以致用的目的。
      本书为慕课版教材,各章节主要内容配备了以二维码为载体的微课,并在人邮学院(www.rymooc.com)
      平台上提供了慕课。此外,本书还提供了课程资源包。资源包中提供了本书所有实例、上机指导、综合案例
      的源代码、制作精良的电子课件PPT、重点及难点教学视频、自测题库(包括选择题、填空题、操作题题库
      及自测试卷等内容),以及拓展综合案例和拓展实验。其中,源代码全部经过精心测试,能够在Windows XP、
      Windows 7 系统下编译和运行。 明日科技,程序设计类畅销图书作者,绝大多数品种在“全国计算机图书排行榜”同品种排行中名列前茅,累计销售百万册。作者编写的《C语言从入门到精通》长期占据各网店排行榜的榜首位置。 第1 章 C 语言概述 1

    1.1 C 语言的发展史 2

    1.1.1 程序语言简述 2

    1.1.2 C 语言的历史 2

    1.2 C 语言的特点 3

    1.3 一个简单的C 程序 3

    1.4 一个完整的C 程序 5

    1.5 C 语言程序的格式 8

    1.6 开发环境 9

    1.6.1 Dev C   9

    1.6.2 Visual C   6.0 13

    小结 14

    上机指导 15

    习题 15

    第2 章 算法 16

    2.1 算法的基本概念 17

    2.1.1 算法的特性 17

    2.1.2 算法的优劣 17

    2.2 算法的描述 18

    2.2.1 自然语言 18

    实例:用自然语言求n!

    2.2.2 流程图 19

    实例:画出趣味俄罗斯方块的流程图

    2.2.3 N-S 流程图 22

    实例:绘制N-S 流程图求n!

    小结 24

    上机指导 24

    习题 24

    第3 章 数据类型 25

    3.1 编程规范 26

    3.2 关键字 26

    3.3 标识符 27

    3.4 数据类型 28

    3.5 常量 29

    3.5.1 整型常量 29

    3.5.2 实型常量 31

    3.5.3 字符型常量 32

    实例1:输出字符常量

    实例2:输出字符串常量

    3.5.4 转义字符 34

    3.5.5 符号常量 35

    实例:输入半径,得到圆的面积

    3.6 变量 36

    3.6.1 整型变量 36

    3.6.2 实型变量 38

    实例:使用各种实型变量

    3.6.3 字符型变量 40

    实例:使用字符型变量

    3.7 变量的存储类别 42

    3.7.1 静态存储与动态存储 42

    3.7.2 auto 变量 42

    实例:使用auto 变量

    3.7.3 static 变量 43

    实例:使用static 变量

    3.7.4 register 变量 43

    实例:使用register 变量修饰整型变量

    3.7.5 extern 变量 44

    实例:使用extem 变量

    3.8 混合运算 45

    实例:int、char、float 型变量相加,

    得出double 型变量进行输出

    小结 46

    上机指导 46

    习题 47

    第4 章 运算符与表达式 48

    4.1 表达式 49

    实例:求解二元一次不定方程ax by=c 的解

    4.2 赋值运算符与赋值表达式 50

    4.2.1 变量赋初值 51

    实例:模拟钟点工的计费情况,使用

    赋值语句和表达式得出钟点工

    工作8 个小时后所得的薪水

    4.2.2 自动类型转换 52

    4.2.3 强制类型转换 52

    实例:通过不同类型变量之间的赋

    值,将赋值操作后的结果进行输出

    4.3 算术运算符与算术表达式 53

    4.3.1 算术运算符 53

    实例:求100~1000 之间满足各位

    数字之和是5 的所有数

    4.3.2 算术表达式 54

    实例:使用算术表达式计算摄氏温度

    4.3.3 优先级与结合性 55

    实例:通过不同运算符的优先级和

    结合性,使用printf 函数显

    示最终的计算结果

    4.3.4 自增 自减运算符 57

    实例:比较自增、自减运算符前缀

    与后缀的不同

    4.4 关系运算符与关系表达式 58

    4.4.1 关系运算符 58

    4.4.2 关系表达式 59

    4.4.3 优先级与结合性 59

    实例:使用if 语句判断两个学科的分数大小

    4.5 逻辑运算符与逻辑表达式 61

    4.5.1 逻辑运算符 61

    4.5.2 逻辑表达式 61

    实例:判断闰年

    4.5.3 优先级与结合性 61

    实例:使用逻辑运算符构造表达

    式,通过输出函数显示表达

    式的结果

    4.6 位逻辑运算符与位逻辑表达式 62

    4.6.1 位逻辑运算符 62

    4.6.2 位逻辑表达式 63

    4.7 逗号运算符与逗号表达式 63

    实例:通过逗号运算符将其他运算

    符结合在一起形成表达式,

    再将表达式的最终结果赋

    值给变量

    4.8 复合赋值运算符 64

    实例:使用复合赋值运算符简化赋

    值运算

    小结 65

    上机指导 67

    习题 67

    第5 章 常用的数据输入 输出

    函数 68

    5.1 语句 69

    5.2 字符数据输入 输出 69

    5.2.1 字符数据输出 69

    实例:使用putchar 函数,输出字

    符串“Hello”

    5.2.2 字符数据输入 70

    实例1:使用getchar 函数获取在键

    盘上输入的字符,再利用

    putchar 函数进行输出

    实例2:使用getchar 函数取消获取

    回车符

    5.3 字符串输入 输出 72

    5.3.1 字符串输出函数 72

    实例:使用puts 函数对字符串常量

    和字符串变量都进行操作

    5.3.2 字符串输入函数 73

    实例:使用字符串输入函数gets 获

    取输入信息

    5.4 格式输出函数 74

    实例:使用printf 函数输出字符花

    5.5 格式输入函数 78

    实例:利用scanf 函数得到用户

    输入的两个整型数据

    5.6 顺序程序设计应用 81

    实例:将大写字符转换成小写字符

    小结 83

    上机指导 83

    习题 83

    第6 章 选择结构程序设计 85

    6.1 if 语句 86

    6.2 if 语句的基本形式 86

    6.2.1 if 语句形式 86

    实例:使用if 语句模拟信号灯指挥

    车辆行驶

    6.2.2 if…else 语句形式 89

    实例1:使用if…else 语句得到两个

    数的最大值

    实例2:使用if…else 语句模拟信号灯

    6.2.3 else if 语句形式 92

    实例:使用else if 语句编写屏幕菜

    单程序

    6.3 if 的嵌套形式 95

    实例:使用if 嵌套语句选择日程安排

    6.4 条件运算符 97

    实例:使用条件运算符计算欠款金额

    6.5 switch 语句 99

    6.5.1 switch 语句的基本形式 99

    实例:使用switch 语句输出分数段

    6.5.2 多路开关模式的switch 语句 103

    实例:使用switch 语句设计欢迎界

    面的菜单选项

    6.6 if…else 语句和switch 语句的区别 104

    6.7 选择结构程序应用 106

    实例:使用switch 语句计算运输

    公司的计费

    小结 108

    上机指导 108

    习题 109

    第7 章 循环控制 110

    7.1 循环语句 111

    7.2 while 语句 111

    实例:计算1 累加到100 的结果

    7.3 do-while 语句 112

    实例:使用do-while 语句计算1~

    100 之间的累加结果

    7.4 for 语句 114

    7.4.1 for 语句使用 114

    实例:打印俄罗斯方块的游戏窗口

    7.4.2 for 循环的变体 117

    实例:省略for 语句中的第一个

    表达式

    7.4.3 for 语句中的逗号应用 119

    实例:计算1~100 之间所有偶数

    的累加结果

    7.5 3 种循环语句的比较 120

    7.6 循环嵌套 120

    7.6.1 循环嵌套的结构 120

    7.6.2 循环嵌套实例 122

    实例:使用嵌套语句打印欢迎界面

    的边框

    7.7 转移语句 124

    7.7.1 goto 语句 124

    实例:使用goto 语句从循环内部跳出

    7.7.2 break 语句 125

    实例:使用break 语句跳出循环

    7.7.3 continue 语句 126

    实例:使用continue 语句结束本次

    的循环操作

    小结 127

    上机指导 128

    习题 128

    第8 章 数组 129

    8.1 一维数组 130

    8.1.1 一维数组的定义和引用 130

    实例:使用数组保存数据

    8.1.2 一维数组初始化 131

    实例:初始化一维数组

    8.1.3 一维数组应用 134

    实例:使用数组保存学生姓名

    8.2 二维数组 135

    8.2.1 二维数组的定义和引用 135

    8.2.2 二维数组初始化 136

    实例:使用二维数组标记游戏屏幕上的图案

    8.2.3 二维数组应用 138

    实例:打印游戏窗口,并设置左右下横框上有图案

    8.3 字符数组 141

    8.3.1 字符数组的定义和引用 141

    8.3.2 字符数组初始化 141

    实例:使用二维字符数组输出一个钻石形状

    8.3.3 字符数组的结束标志 143

    8.3.4 字符数组的输入和输出 144

    实例:使用两种方式输出字符串

    8.3.5 字符数组应用 145

    实例:计算字符串中单词的个数

    8.4 多维数组 146

    8.5 数组的排序算法 146

    8.5.1 选择法排序 146

    8.5.2 冒泡法排序 148

    8.5.3 交换法排序 150

    实例:实现学生信息管理系统中的

    学生成绩排名功能

    8.5.4 插入法排序 152

    8.5.5 折半法排序 154

    8.5.6 排序算法的比较 156

    8.6 字符串处理函数 157

    8.6.1 字符串复制 157

    实例:字符串复制应用

    8.6.2 字符串连接 158

    实例:字符串连接应用

    8.6.3 字符串比较 160

    实例:字符串比较应用

    8.6.4 字符串大小写转换 161

    实例:字符串大小写转换

    8.6.5 获得字符串长度 163

    实例:获得字符串长度

    8.7 数组应用 164

    8.7.1 反转输出字符串 164

    8.7.2 输出系统日期和时间 165

    8.7.3 字符串的加密和解密 166

    小结 168

    上机指导 168

    习题 169

    第9 章 函数 170

    9.1 函数概述 171

    实例:在主函数中调用其他函数

    9.2 函数的定义 172

    9.2.1 函数定义的形式 173

    9.2.2 定义与声明 174

    实例:定义获取屏幕光标位置和设置文字颜色函数

    9.3 返回语句 177

    9.3.1 从函数返回 177

    实例:从函数返回应用

    9.3.2 返回值 178

    实例:返回值类型与return 值类型

    9.4 函数参数 180

    9.4.1 形式参数与实际参数 180

    实例:形式参数与实际参数的比喻实现

    9.4.2 数组作函数参数 182

    实例:数组元素作为函数参数

    9.4.3 main 函数的参数 187

    实例:main 函数的参数使用

    9.5 函数的调用 188

    9.5.1 函数的调用方式 188

    实例:调用获取屏幕光标位置和设

    置文字颜色函数,来设置趣

    味俄罗斯方块的标题图

    9.5.2 嵌套调用 193

    实例:函数的嵌套调用

    9.5.3 递归调用 195

    实例:函数的递归调用

    9.6 内部函数和外部函数 197

    9.6.1 内部函数 197

    实例:内部函数的使用

    9.6.2 外部函数 198

    实例:外部函数的使用

    9.7 局部变量和全局变量 200

    9.7.1 局部变量 200

    实例1:局部变量的作用域

    实例2:局部变量的屏蔽作用

    9.7.2 全局变量 203

    实例:使用全局变量模拟价格调整

    9.8 函数应用 204

    实例1:数学库函数使用

    实例2:使用三角函数

    实例3:使用字符函数判断输入字符

    小结 210

    上机指导 210

    习题 211

    第10 章 指针 212

    10.1 指针相关概念 213

    10.1.1 地址与指针 213

    10.1.2 变量与指针 214

    10.1.3 指针变量 214

    实例:从键盘中输入两个数,利用指

    针的方法将这两个数输出

    10.1.4 指针自加自减运算 218

    实例:整型变量地址输出

    10.2 数组与指针 219

    10.2.1 一维数组与指针 219

    实例:输出数组中的元素

    10.2.2 二维数组与指针 223

    实例:利用指针对二维数组进行输

    入和输出

    10.2.3 字符串与指针 226

    实例:输入两个字符串a 和b,将

    字符串a 和b 连接起来

    10.2.4 字符串数组 228

    实例:输出12 个月

    10.3 指向指针的指针 229

    实例1:使用指向指针的指针输出12 个月

    实例2:利用指向指针的指针输出一维数组中是偶数的元

    素,并统计偶数的个数

    10.4 指针变量作函数参数 232

    实例1:调用自定义函数交换两变量值

    实例2:嵌套的函数调用

    实例3:任意输入10 个数据,先将

    这10 个数据中是奇数的数

    据输出,再求这10 个数据

    中所有奇数之和

    10.5 返回指针值的函数 240

    实例:使用返回指针的函数查找最大值

    10.6 指针数组作main 函数的参数 242

    实例:输出main 函数的参数内容

    小结 243

    上机指导 243

    习题 244

    第11 章 结构体和共用体 245

    11.1 结构体 246

    11.1.1 结构体类型的概念 246

    11.1.2 结构体变量的定义 247

    11.1.3 结构体变量的引用 248

    实例:引用学生成绩结构体

    11.1.4 结构体类型的初始化 250

    实例:声明结构体类型表示商品,

    然后定义结构体变量,之后

    对变量中的成员进行赋值,

    最后将结构体变量中保存

    的信息进行输出

    11.2 结构体数组 251

    11.2.1 定义结构体数组 251

    11.2.2 初始化结构体数组 253

    实例:初始化学生信息结构体数

    组,并输出学生信息

    11.3 结构体指针 254

    11.3.1 指向结构体变量的指针 255

    实例:通过指针使用点运算符引用

    结构体变量的成员

    11.3.2 指向结构体数组的指针 257

    实例:根据学生结构类型定义结构

    体数组,并对其进行初始化

    操作

    11.3.3 结构体作为函数参数 259

    实例:声明一个简单的结构类型表

    示学生成绩,编写一个函

    数,使得该结构类型变量作

    为函数的参数

    11.4 包含结构的结构 262

    实例:定义两个结构体类型,一个

    表示日期,一个表示学生的

    个人信息

    11.5 链表 263

    11.5.1 链表概述 263

    11.5.2 创建动态链表 264

    11.5.3 输出链表 266

    实例:编写一个包含学生信息的链

    表结构,并且将链表中的信

    息进行输出

    11.6 链表相关操作 268

    11.6.1 链表的插入操作 269

    11.6.2 链表的删除操作 270

    实例:对学生信息链表进行删除操作

    11.7 共用体 274

    11.7.1 共用体的概念 274

    11.7.2 共用体变量的引用 274

    实例:定义共用体变量,通过定义

    的显示函数,引用共用体中

    的数据成员

    11.7.3 共用体变量的初始化 275

    实例:定义共用体变量的同时进行

    初始化操作,并将引用变量

    的值输出

    11.7.4 共用体类型的数据特点 276

    11.8 枚举类型 276

    实例:使用枚举类型

    小结 278

    上机指导 278

    习题 279

    第12 章 位运算 280

    12.1 位与字节 281

    12.2 位运算操作符 281

    12.2.1 “与”运算符 281

    实例:任意输入两个数分别赋给a

    和b,计算a&b 的值

    12.2.2 “或”运算符 283

    实例:任意输入两个数分别赋给a

    和b,计算a|b 的值

    12.2.3 “取反”运算符 284

    实例:输入一个数赋给变量a,计

    算~a 的值

    12.2.4 “异或”运算符 285

    实例:输入两个数分别赋给变量a

    和b,计算a^b 的值

    12.2.5 “左移”运算符 287

    实例:将15 先左移两位,将其左

    移后的结果输出,在这个结

    果的基础上再左移3 位,并

    将结果输出

    12.2.6 “右移”运算符 288

    实例:将30 和-30 分别右移3 位,

    将所得结果分别输出,在所

    得结果的基础上再分别右

    移两位,并将结果输出

    12.3 循环移位 289

    实例:从键盘中输入一个八进制数,

    然后输入要移位的位数,最后

    将移位的结果显示在屏幕上

    12.4 位段 292

    12.4.1 位段的概念与定义 292

    12.4.2 位段相关说明 293

    小结 294

    上机指导 294

    习题 295

    第13 章 预处理 296

    13.1 宏定义 297

    13.1.1 不带参数的宏定义 297

    实例:设计趣味俄罗斯方块的宏

    13.1.2 带参数的宏定义 298

    实例:对两个数实现乘法加法混合运算

    13.2 #include 指令 299

    实例:文件包含应用

    13.3 条件编译 301

    13.3.1 #if 命令 301

    实例:#if 应用

    13.3.2 #ifdef 及#ifndef 命令 304

    实例:#ifdef 和#ifndef 的具体应用

    13.3.3 #undef 命令 305

    13.3.4 #line 命令 305

    实例:输出行号

    13.3.5 #pragma 命令 306

    小结 306

    上机指导 307

    习题 307

    第14 章 文件 308

    14.1 文件概述 309

    14.2 文件基本操作 309

    14.2.1 文件指针 309

    14.2.2 文件的打开 310

    14.2.3 文件的关闭 310

    14.3 文件的读写 311

    14.3.1 fputc 函数 311

    实例:向E:\exp01.txt 中写入

    “forever…forever…”

    14.3.2 fgetc 函数 312

    实例:在屏幕中显示出exp02.txt 中

    的内容

    14.3.3 fputs 函数 312

    实例:向指定的磁盘文件中写入字

    符串“gone with the wind”

    14.3.4 fgets 函数 313

    实例:读取任意磁盘文件中的内容

    14.3.5 fprintf 函数 314

    实例:将数字88 以字符的形式写

    到磁盘文件中

    14.3.6 fscanf 函数 315

    实例:将文件中的5 个字符以整数

    形式输出

    14.3.7 fread 和fwrite 函数 316

    实例:将录入的通讯录信息保存到

    磁盘文件中,并显示

    14.4 文件的定位 318

    14.4.1 fseek 函数 318

    实例:向任意一个二进制文件中写

    入一个长度大于6 的字符

    串,然后从该字符串的第6

    个字符开始输出余下字符

    14.4.2 rewind 函数 320

    实例:rewind 函数的应用

    14.4.3 ftell 函数 321

    实例:求字符串长度

    小结 322

    上机指导 323

    习题 323

    第15 章 存储管理 324

    15.1 内存组织方式 325

    15.1.1 内存的组织方式 325

    15.1.2 堆与栈 325

    实例:在堆中分配内存并释放

    15.2 动态管理 327

    15.2.1 malloc 函数 327

    实例:使用malloc 函数动态分配空间

    15.2.2 calloc 函数 328

    实例:使用calloc 函数分配数组内存

    15.2.3 realloc 函数 329

    实例:使用realloc 函数重新分配内存

    15.2.4 free 函数 330

    实例:使用free 函数释放内存空间

    15.3 内存丢失 331

    小结 332

    上机指导 332

    习题 333

    第16 章 网络套接字编程 334

    16.1 内存组织方式 335

    16.1.1 IP 地址 335

    16.1.2 OSI 七层参考模型 335

    16.1.3 地址解析 336

    16.1.4 域名系统 337

    16.1.5 TCP IP 337

    16.1.6 端口 339

    16.1.7 套接字的引入 339

    16.1.8 网络字节顺序 339

    16.2 套接字概述 339

    16.2.1 套接字概述 340

    16.2.2 TCP 的套接字的socket 编程 340

    16.2.3 UDP 的套接字的socket 编程 340

    16.3 套接字函数 341

    16.3.1 套接字函数介绍 341

    16.3.2 基于TCP 的网络聊天程序 345

    实例:设计网络聊天服务器端

    小结 351

    上机指导 352

    习题 352

    第17 章 综合实例—学生信息

    管理系统 353

    17.1 开发背景 354

    17.2 开发环境需求 354

    17.3 系统功能设计 354

    17.4 预处理模块设计 354

    17.4.1 模块概述 354

    17.4.2 控制输出格式 355

    17.4.3 文件引用 355

    17.4.4 宏定义 355

    17.4.5 函数声明 355

    17.5 主函数设计 356

    17.5.1 功能概述 356

    17.5.2 实现主函数 356

    17.5.3 显示主菜单 358

    17.6 录入学生信息 358

    17.6.1 模块概述 358

    17.6.2 实现文件的打开和关闭功能 359

    17.6.3 实现录入学生信息 360

    17.7 查询学生信息 362

    17.7.1 模块概述 362

    17.7.2 查询没有记录的文件 363

    17.7.3 查找并打印学生信息 363

    17.8 删除学生信息 364

    17.8.1 模块概述 364

    17.8.2 实现删除学生信息 364

    17.9 修改学生信息 366

    17.9.1 模块概述 366

    17.9.2 实现修改学生信息 367

    17.10 插入学生信息 368

    17.10.1 模块概述 368

    17.10.2 实现插入学生信息 368

    17.11 学生成绩排名 370

    17.11.1 模块概述 370

    17.11.2 使用交换排序法实现排序功能 371

    17.11.3 实现学生成绩排名 371

    17.12 统计学生总数 372

    17.12.1 模块概述 372

    17.12.2 实现统计学生总数 372

    17.13 显示所有学生信息 373

    17.13.1 模块概述 373

    17.13.2 读取并显示所有学生信息 374

    小结 374
  • 内容简介:
    本书作为C 语言程序设计的教程,系统全面地介绍了有关C 语言程序设计开发所涉及的各类知识。全
      书共分17 章,内容包括C 语言概述、算法、数据类型、运算符与表达式、常用的数据输入 输出函数、选择
      结构程序设计、循环控制、数组、函数、指针、结构体和共用体、位运算、预处理、文件、存储管理、网络
      套接字编程、综合实例——学生信息管理系统。全书每章内容都与实例紧密结合,有助于学生理解知识、应
      用知识,达到学以致用的目的。
      本书为慕课版教材,各章节主要内容配备了以二维码为载体的微课,并在人邮学院(www.rymooc.com)
      平台上提供了慕课。此外,本书还提供了课程资源包。资源包中提供了本书所有实例、上机指导、综合案例
      的源代码、制作精良的电子课件PPT、重点及难点教学视频、自测题库(包括选择题、填空题、操作题题库
      及自测试卷等内容),以及拓展综合案例和拓展实验。其中,源代码全部经过精心测试,能够在Windows XP、
      Windows 7 系统下编译和运行。
  • 作者简介:
    明日科技,程序设计类畅销图书作者,绝大多数品种在“全国计算机图书排行榜”同品种排行中名列前茅,累计销售百万册。作者编写的《C语言从入门到精通》长期占据各网店排行榜的榜首位置。
  • 目录:
    第1 章 C 语言概述 1

    1.1 C 语言的发展史 2

    1.1.1 程序语言简述 2

    1.1.2 C 语言的历史 2

    1.2 C 语言的特点 3

    1.3 一个简单的C 程序 3

    1.4 一个完整的C 程序 5

    1.5 C 语言程序的格式 8

    1.6 开发环境 9

    1.6.1 Dev C   9

    1.6.2 Visual C   6.0 13

    小结 14

    上机指导 15

    习题 15

    第2 章 算法 16

    2.1 算法的基本概念 17

    2.1.1 算法的特性 17

    2.1.2 算法的优劣 17

    2.2 算法的描述 18

    2.2.1 自然语言 18

    实例:用自然语言求n!

    2.2.2 流程图 19

    实例:画出趣味俄罗斯方块的流程图

    2.2.3 N-S 流程图 22

    实例:绘制N-S 流程图求n!

    小结 24

    上机指导 24

    习题 24

    第3 章 数据类型 25

    3.1 编程规范 26

    3.2 关键字 26

    3.3 标识符 27

    3.4 数据类型 28

    3.5 常量 29

    3.5.1 整型常量 29

    3.5.2 实型常量 31

    3.5.3 字符型常量 32

    实例1:输出字符常量

    实例2:输出字符串常量

    3.5.4 转义字符 34

    3.5.5 符号常量 35

    实例:输入半径,得到圆的面积

    3.6 变量 36

    3.6.1 整型变量 36

    3.6.2 实型变量 38

    实例:使用各种实型变量

    3.6.3 字符型变量 40

    实例:使用字符型变量

    3.7 变量的存储类别 42

    3.7.1 静态存储与动态存储 42

    3.7.2 auto 变量 42

    实例:使用auto 变量

    3.7.3 static 变量 43

    实例:使用static 变量

    3.7.4 register 变量 43

    实例:使用register 变量修饰整型变量

    3.7.5 extern 变量 44

    实例:使用extem 变量

    3.8 混合运算 45

    实例:int、char、float 型变量相加,

    得出double 型变量进行输出

    小结 46

    上机指导 46

    习题 47

    第4 章 运算符与表达式 48

    4.1 表达式 49

    实例:求解二元一次不定方程ax by=c 的解

    4.2 赋值运算符与赋值表达式 50

    4.2.1 变量赋初值 51

    实例:模拟钟点工的计费情况,使用

    赋值语句和表达式得出钟点工

    工作8 个小时后所得的薪水

    4.2.2 自动类型转换 52

    4.2.3 强制类型转换 52

    实例:通过不同类型变量之间的赋

    值,将赋值操作后的结果进行输出

    4.3 算术运算符与算术表达式 53

    4.3.1 算术运算符 53

    实例:求100~1000 之间满足各位

    数字之和是5 的所有数

    4.3.2 算术表达式 54

    实例:使用算术表达式计算摄氏温度

    4.3.3 优先级与结合性 55

    实例:通过不同运算符的优先级和

    结合性,使用printf 函数显

    示最终的计算结果

    4.3.4 自增 自减运算符 57

    实例:比较自增、自减运算符前缀

    与后缀的不同

    4.4 关系运算符与关系表达式 58

    4.4.1 关系运算符 58

    4.4.2 关系表达式 59

    4.4.3 优先级与结合性 59

    实例:使用if 语句判断两个学科的分数大小

    4.5 逻辑运算符与逻辑表达式 61

    4.5.1 逻辑运算符 61

    4.5.2 逻辑表达式 61

    实例:判断闰年

    4.5.3 优先级与结合性 61

    实例:使用逻辑运算符构造表达

    式,通过输出函数显示表达

    式的结果

    4.6 位逻辑运算符与位逻辑表达式 62

    4.6.1 位逻辑运算符 62

    4.6.2 位逻辑表达式 63

    4.7 逗号运算符与逗号表达式 63

    实例:通过逗号运算符将其他运算

    符结合在一起形成表达式,

    再将表达式的最终结果赋

    值给变量

    4.8 复合赋值运算符 64

    实例:使用复合赋值运算符简化赋

    值运算

    小结 65

    上机指导 67

    习题 67

    第5 章 常用的数据输入 输出

    函数 68

    5.1 语句 69

    5.2 字符数据输入 输出 69

    5.2.1 字符数据输出 69

    实例:使用putchar 函数,输出字

    符串“Hello”

    5.2.2 字符数据输入 70

    实例1:使用getchar 函数获取在键

    盘上输入的字符,再利用

    putchar 函数进行输出

    实例2:使用getchar 函数取消获取

    回车符

    5.3 字符串输入 输出 72

    5.3.1 字符串输出函数 72

    实例:使用puts 函数对字符串常量

    和字符串变量都进行操作

    5.3.2 字符串输入函数 73

    实例:使用字符串输入函数gets 获

    取输入信息

    5.4 格式输出函数 74

    实例:使用printf 函数输出字符花

    5.5 格式输入函数 78

    实例:利用scanf 函数得到用户

    输入的两个整型数据

    5.6 顺序程序设计应用 81

    实例:将大写字符转换成小写字符

    小结 83

    上机指导 83

    习题 83

    第6 章 选择结构程序设计 85

    6.1 if 语句 86

    6.2 if 语句的基本形式 86

    6.2.1 if 语句形式 86

    实例:使用if 语句模拟信号灯指挥

    车辆行驶

    6.2.2 if…else 语句形式 89

    实例1:使用if…else 语句得到两个

    数的最大值

    实例2:使用if…else 语句模拟信号灯

    6.2.3 else if 语句形式 92

    实例:使用else if 语句编写屏幕菜

    单程序

    6.3 if 的嵌套形式 95

    实例:使用if 嵌套语句选择日程安排

    6.4 条件运算符 97

    实例:使用条件运算符计算欠款金额

    6.5 switch 语句 99

    6.5.1 switch 语句的基本形式 99

    实例:使用switch 语句输出分数段

    6.5.2 多路开关模式的switch 语句 103

    实例:使用switch 语句设计欢迎界

    面的菜单选项

    6.6 if…else 语句和switch 语句的区别 104

    6.7 选择结构程序应用 106

    实例:使用switch 语句计算运输

    公司的计费

    小结 108

    上机指导 108

    习题 109

    第7 章 循环控制 110

    7.1 循环语句 111

    7.2 while 语句 111

    实例:计算1 累加到100 的结果

    7.3 do-while 语句 112

    实例:使用do-while 语句计算1~

    100 之间的累加结果

    7.4 for 语句 114

    7.4.1 for 语句使用 114

    实例:打印俄罗斯方块的游戏窗口

    7.4.2 for 循环的变体 117

    实例:省略for 语句中的第一个

    表达式

    7.4.3 for 语句中的逗号应用 119

    实例:计算1~100 之间所有偶数

    的累加结果

    7.5 3 种循环语句的比较 120

    7.6 循环嵌套 120

    7.6.1 循环嵌套的结构 120

    7.6.2 循环嵌套实例 122

    实例:使用嵌套语句打印欢迎界面

    的边框

    7.7 转移语句 124

    7.7.1 goto 语句 124

    实例:使用goto 语句从循环内部跳出

    7.7.2 break 语句 125

    实例:使用break 语句跳出循环

    7.7.3 continue 语句 126

    实例:使用continue 语句结束本次

    的循环操作

    小结 127

    上机指导 128

    习题 128

    第8 章 数组 129

    8.1 一维数组 130

    8.1.1 一维数组的定义和引用 130

    实例:使用数组保存数据

    8.1.2 一维数组初始化 131

    实例:初始化一维数组

    8.1.3 一维数组应用 134

    实例:使用数组保存学生姓名

    8.2 二维数组 135

    8.2.1 二维数组的定义和引用 135

    8.2.2 二维数组初始化 136

    实例:使用二维数组标记游戏屏幕上的图案

    8.2.3 二维数组应用 138

    实例:打印游戏窗口,并设置左右下横框上有图案

    8.3 字符数组 141

    8.3.1 字符数组的定义和引用 141

    8.3.2 字符数组初始化 141

    实例:使用二维字符数组输出一个钻石形状

    8.3.3 字符数组的结束标志 143

    8.3.4 字符数组的输入和输出 144

    实例:使用两种方式输出字符串

    8.3.5 字符数组应用 145

    实例:计算字符串中单词的个数

    8.4 多维数组 146

    8.5 数组的排序算法 146

    8.5.1 选择法排序 146

    8.5.2 冒泡法排序 148

    8.5.3 交换法排序 150

    实例:实现学生信息管理系统中的

    学生成绩排名功能

    8.5.4 插入法排序 152

    8.5.5 折半法排序 154

    8.5.6 排序算法的比较 156

    8.6 字符串处理函数 157

    8.6.1 字符串复制 157

    实例:字符串复制应用

    8.6.2 字符串连接 158

    实例:字符串连接应用

    8.6.3 字符串比较 160

    实例:字符串比较应用

    8.6.4 字符串大小写转换 161

    实例:字符串大小写转换

    8.6.5 获得字符串长度 163

    实例:获得字符串长度

    8.7 数组应用 164

    8.7.1 反转输出字符串 164

    8.7.2 输出系统日期和时间 165

    8.7.3 字符串的加密和解密 166

    小结 168

    上机指导 168

    习题 169

    第9 章 函数 170

    9.1 函数概述 171

    实例:在主函数中调用其他函数

    9.2 函数的定义 172

    9.2.1 函数定义的形式 173

    9.2.2 定义与声明 174

    实例:定义获取屏幕光标位置和设置文字颜色函数

    9.3 返回语句 177

    9.3.1 从函数返回 177

    实例:从函数返回应用

    9.3.2 返回值 178

    实例:返回值类型与return 值类型

    9.4 函数参数 180

    9.4.1 形式参数与实际参数 180

    实例:形式参数与实际参数的比喻实现

    9.4.2 数组作函数参数 182

    实例:数组元素作为函数参数

    9.4.3 main 函数的参数 187

    实例:main 函数的参数使用

    9.5 函数的调用 188

    9.5.1 函数的调用方式 188

    实例:调用获取屏幕光标位置和设

    置文字颜色函数,来设置趣

    味俄罗斯方块的标题图

    9.5.2 嵌套调用 193

    实例:函数的嵌套调用

    9.5.3 递归调用 195

    实例:函数的递归调用

    9.6 内部函数和外部函数 197

    9.6.1 内部函数 197

    实例:内部函数的使用

    9.6.2 外部函数 198

    实例:外部函数的使用

    9.7 局部变量和全局变量 200

    9.7.1 局部变量 200

    实例1:局部变量的作用域

    实例2:局部变量的屏蔽作用

    9.7.2 全局变量 203

    实例:使用全局变量模拟价格调整

    9.8 函数应用 204

    实例1:数学库函数使用

    实例2:使用三角函数

    实例3:使用字符函数判断输入字符

    小结 210

    上机指导 210

    习题 211

    第10 章 指针 212

    10.1 指针相关概念 213

    10.1.1 地址与指针 213

    10.1.2 变量与指针 214

    10.1.3 指针变量 214

    实例:从键盘中输入两个数,利用指

    针的方法将这两个数输出

    10.1.4 指针自加自减运算 218

    实例:整型变量地址输出

    10.2 数组与指针 219

    10.2.1 一维数组与指针 219

    实例:输出数组中的元素

    10.2.2 二维数组与指针 223

    实例:利用指针对二维数组进行输

    入和输出

    10.2.3 字符串与指针 226

    实例:输入两个字符串a 和b,将

    字符串a 和b 连接起来

    10.2.4 字符串数组 228

    实例:输出12 个月

    10.3 指向指针的指针 229

    实例1:使用指向指针的指针输出12 个月

    实例2:利用指向指针的指针输出一维数组中是偶数的元

    素,并统计偶数的个数

    10.4 指针变量作函数参数 232

    实例1:调用自定义函数交换两变量值

    实例2:嵌套的函数调用

    实例3:任意输入10 个数据,先将

    这10 个数据中是奇数的数

    据输出,再求这10 个数据

    中所有奇数之和

    10.5 返回指针值的函数 240

    实例:使用返回指针的函数查找最大值

    10.6 指针数组作main 函数的参数 242

    实例:输出main 函数的参数内容

    小结 243

    上机指导 243

    习题 244

    第11 章 结构体和共用体 245

    11.1 结构体 246

    11.1.1 结构体类型的概念 246

    11.1.2 结构体变量的定义 247

    11.1.3 结构体变量的引用 248

    实例:引用学生成绩结构体

    11.1.4 结构体类型的初始化 250

    实例:声明结构体类型表示商品,

    然后定义结构体变量,之后

    对变量中的成员进行赋值,

    最后将结构体变量中保存

    的信息进行输出

    11.2 结构体数组 251

    11.2.1 定义结构体数组 251

    11.2.2 初始化结构体数组 253

    实例:初始化学生信息结构体数

    组,并输出学生信息

    11.3 结构体指针 254

    11.3.1 指向结构体变量的指针 255

    实例:通过指针使用点运算符引用

    结构体变量的成员

    11.3.2 指向结构体数组的指针 257

    实例:根据学生结构类型定义结构

    体数组,并对其进行初始化

    操作

    11.3.3 结构体作为函数参数 259

    实例:声明一个简单的结构类型表

    示学生成绩,编写一个函

    数,使得该结构类型变量作

    为函数的参数

    11.4 包含结构的结构 262

    实例:定义两个结构体类型,一个

    表示日期,一个表示学生的

    个人信息

    11.5 链表 263

    11.5.1 链表概述 263

    11.5.2 创建动态链表 264

    11.5.3 输出链表 266

    实例:编写一个包含学生信息的链

    表结构,并且将链表中的信

    息进行输出

    11.6 链表相关操作 268

    11.6.1 链表的插入操作 269

    11.6.2 链表的删除操作 270

    实例:对学生信息链表进行删除操作

    11.7 共用体 274

    11.7.1 共用体的概念 274

    11.7.2 共用体变量的引用 274

    实例:定义共用体变量,通过定义

    的显示函数,引用共用体中

    的数据成员

    11.7.3 共用体变量的初始化 275

    实例:定义共用体变量的同时进行

    初始化操作,并将引用变量

    的值输出

    11.7.4 共用体类型的数据特点 276

    11.8 枚举类型 276

    实例:使用枚举类型

    小结 278

    上机指导 278

    习题 279

    第12 章 位运算 280

    12.1 位与字节 281

    12.2 位运算操作符 281

    12.2.1 “与”运算符 281

    实例:任意输入两个数分别赋给a

    和b,计算a&b 的值

    12.2.2 “或”运算符 283

    实例:任意输入两个数分别赋给a

    和b,计算a|b 的值

    12.2.3 “取反”运算符 284

    实例:输入一个数赋给变量a,计

    算~a 的值

    12.2.4 “异或”运算符 285

    实例:输入两个数分别赋给变量a

    和b,计算a^b 的值

    12.2.5 “左移”运算符 287

    实例:将15 先左移两位,将其左

    移后的结果输出,在这个结

    果的基础上再左移3 位,并

    将结果输出

    12.2.6 “右移”运算符 288

    实例:将30 和-30 分别右移3 位,

    将所得结果分别输出,在所

    得结果的基础上再分别右

    移两位,并将结果输出

    12.3 循环移位 289

    实例:从键盘中输入一个八进制数,

    然后输入要移位的位数,最后

    将移位的结果显示在屏幕上

    12.4 位段 292

    12.4.1 位段的概念与定义 292

    12.4.2 位段相关说明 293

    小结 294

    上机指导 294

    习题 295

    第13 章 预处理 296

    13.1 宏定义 297

    13.1.1 不带参数的宏定义 297

    实例:设计趣味俄罗斯方块的宏

    13.1.2 带参数的宏定义 298

    实例:对两个数实现乘法加法混合运算

    13.2 #include 指令 299

    实例:文件包含应用

    13.3 条件编译 301

    13.3.1 #if 命令 301

    实例:#if 应用

    13.3.2 #ifdef 及#ifndef 命令 304

    实例:#ifdef 和#ifndef 的具体应用

    13.3.3 #undef 命令 305

    13.3.4 #line 命令 305

    实例:输出行号

    13.3.5 #pragma 命令 306

    小结 306

    上机指导 307

    习题 307

    第14 章 文件 308

    14.1 文件概述 309

    14.2 文件基本操作 309

    14.2.1 文件指针 309

    14.2.2 文件的打开 310

    14.2.3 文件的关闭 310

    14.3 文件的读写 311

    14.3.1 fputc 函数 311

    实例:向E:\exp01.txt 中写入

    “forever…forever…”

    14.3.2 fgetc 函数 312

    实例:在屏幕中显示出exp02.txt 中

    的内容

    14.3.3 fputs 函数 312

    实例:向指定的磁盘文件中写入字

    符串“gone with the wind”

    14.3.4 fgets 函数 313

    实例:读取任意磁盘文件中的内容

    14.3.5 fprintf 函数 314

    实例:将数字88 以字符的形式写

    到磁盘文件中

    14.3.6 fscanf 函数 315

    实例:将文件中的5 个字符以整数

    形式输出

    14.3.7 fread 和fwrite 函数 316

    实例:将录入的通讯录信息保存到

    磁盘文件中,并显示

    14.4 文件的定位 318

    14.4.1 fseek 函数 318

    实例:向任意一个二进制文件中写

    入一个长度大于6 的字符

    串,然后从该字符串的第6

    个字符开始输出余下字符

    14.4.2 rewind 函数 320

    实例:rewind 函数的应用

    14.4.3 ftell 函数 321

    实例:求字符串长度

    小结 322

    上机指导 323

    习题 323

    第15 章 存储管理 324

    15.1 内存组织方式 325

    15.1.1 内存的组织方式 325

    15.1.2 堆与栈 325

    实例:在堆中分配内存并释放

    15.2 动态管理 327

    15.2.1 malloc 函数 327

    实例:使用malloc 函数动态分配空间

    15.2.2 calloc 函数 328

    实例:使用calloc 函数分配数组内存

    15.2.3 realloc 函数 329

    实例:使用realloc 函数重新分配内存

    15.2.4 free 函数 330

    实例:使用free 函数释放内存空间

    15.3 内存丢失 331

    小结 332

    上机指导 332

    习题 333

    第16 章 网络套接字编程 334

    16.1 内存组织方式 335

    16.1.1 IP 地址 335

    16.1.2 OSI 七层参考模型 335

    16.1.3 地址解析 336

    16.1.4 域名系统 337

    16.1.5 TCP IP 337

    16.1.6 端口 339

    16.1.7 套接字的引入 339

    16.1.8 网络字节顺序 339

    16.2 套接字概述 339

    16.2.1 套接字概述 340

    16.2.2 TCP 的套接字的socket 编程 340

    16.2.3 UDP 的套接字的socket 编程 340

    16.3 套接字函数 341

    16.3.1 套接字函数介绍 341

    16.3.2 基于TCP 的网络聊天程序 345

    实例:设计网络聊天服务器端

    小结 351

    上机指导 352

    习题 352

    第17 章 综合实例—学生信息

    管理系统 353

    17.1 开发背景 354

    17.2 开发环境需求 354

    17.3 系统功能设计 354

    17.4 预处理模块设计 354

    17.4.1 模块概述 354

    17.4.2 控制输出格式 355

    17.4.3 文件引用 355

    17.4.4 宏定义 355

    17.4.5 函数声明 355

    17.5 主函数设计 356

    17.5.1 功能概述 356

    17.5.2 实现主函数 356

    17.5.3 显示主菜单 358

    17.6 录入学生信息 358

    17.6.1 模块概述 358

    17.6.2 实现文件的打开和关闭功能 359

    17.6.3 实现录入学生信息 360

    17.7 查询学生信息 362

    17.7.1 模块概述 362

    17.7.2 查询没有记录的文件 363

    17.7.3 查找并打印学生信息 363

    17.8 删除学生信息 364

    17.8.1 模块概述 364

    17.8.2 实现删除学生信息 364

    17.9 修改学生信息 366

    17.9.1 模块概述 366

    17.9.2 实现修改学生信息 367

    17.10 插入学生信息 368

    17.10.1 模块概述 368

    17.10.2 实现插入学生信息 368

    17.11 学生成绩排名 370

    17.11.1 模块概述 370

    17.11.2 使用交换排序法实现排序功能 371

    17.11.3 实现学生成绩排名 371

    17.12 统计学生总数 372

    17.12.1 模块概述 372

    17.12.2 实现统计学生总数 372

    17.13 显示所有学生信息 373

    17.13.1 模块概述 373

    17.13.2 读取并显示所有学生信息 374

    小结 374
查看详情
相关图书 / 更多
C语言程序设计(慕课版)
C语言程序设计
吕爱华主编
C语言程序设计(慕课版)
C语言程序设计
梁颖红
C语言程序设计(慕课版)
C语言程序设计项目双语教程
刘倍雄 编;何玲;罗欢
C语言程序设计(慕课版)
C语言程序设计问题求解与学习指导
郑晓健
C语言程序设计(慕课版)
C语言程序设计第4版 索明何 邵瑛 邢海霞 王正勇 黄
索明何 邵瑛 邢海霞 王正勇 黄鑫
C语言程序设计(慕课版)
C语言程序设计能力教程实训指导与习题解答(第2版)
吴昂、柏万里 编
C语言程序设计(慕课版)
C语言程序设计
李柳柏 编;曾俊
C语言程序设计(慕课版)
C语言程序设计实用教程/现代学徒制试点创新成果系列教材
张叶茂刘红艳陈新菡 著
C语言程序设计(慕课版)
C语言程序设计面向“新工科”人才培养(微课视频版)
徐新爱;朱莹婷;卢昕;秦春影;黄水发;王丽娜
C语言程序设计(慕课版)
C语言程序设计——以机器博弈为例(微课版)
邱虹坤;王亚杰;孙玉霞;刘成;王晓岩;郭建新;杨煦
C语言程序设计(慕课版)
C语言程序设计教程
万家华 陈家俊 吴建国
C语言程序设计(慕课版)
C语言程序设计实验指导与习题集
李聪朱倩张晓芳 主编
您可能感兴趣 / 更多
C语言程序设计(慕课版)
王安石与宋代文学研究
徐国华、包伟民 编
C语言程序设计(慕课版)
职业经理(第2版)
徐国华、王瑛 著
C语言程序设计(慕课版)
C语言程序设计(慕课版 第2版)
徐国华;袁立;代美丽
C语言程序设计(慕课版)
吴江年鉴(2020)(精)
徐国华 编
C语言程序设计(慕课版)
汤显祖研究集刊
徐国华 编
C语言程序设计(慕课版)
单片机技术项目教程
徐国华;刘春艳
C语言程序设计(慕课版)
大学计算机基础(附微课视频)
徐国华 著
C语言程序设计(慕课版)
黑白世界
徐国华 绘
C语言程序设计(慕课版)
新月文丛:徐志摩佚文集
徐国华 编
C语言程序设计(慕课版)
蒋士铨研究
徐国华 著
C语言程序设计(慕课版)
大学语文
徐国华 主编;杨安邦
C语言程序设计(慕课版)
电工技能实训教程
徐国华 主编