第一篇 Linux基础篇 25
第1章 Linux编程平台(教学视频:64分钟) 25
1.1 Linux发行版的介绍 25
1.1.1 Red Hat Linux 25
1.1.2 Debian Linux 25
1.2 安装Linux 26
1.2.1 Linux的分区格式 26
1.2.2 在Windows系统中划分Linux分区 26
1.2.3 安装Red Hat 9.0 28
1.2.4 GRUB在Windows分区中引导Linux 35
1.3 VMware虚拟机安装Linux系统 36
1.3.1 VMware软件安装 36
1.3.2 新建虚拟计算机 38
1.3.3 VMware的使用 41
1.3.4 在VMware虚拟机中安装Linux系统 42
1.4 第一个C程序 43
1.4.1 在Linux中编写C程序代码 43
1.4.2 编译程序 44
1.5 小结 44
1.6 习题 45
第2章 使用文本编辑器(教学视频:39分钟) 46
2.1 使用vim 46
2.1.1 启动vim 46
2.1.2 在桌面上创建vim启动器 47
2.1.3 vim的工作模式 47
2.1.4 保存与打开文件 47
2.1.5 移动光标 48
2.1.6 插入操作 50
2.1.7 删除操作 50
2.1.8 取消操作 51
2.1.9 保存操作 51
2.1.10 退出操作 52
2.1.11 查找操作 52
2.1.12 替换操作 52
2.1.13 选项设置 52
2.1.14 调用shell命令 53
2.2 vim使用实例 53
2.2.1 字符的插入与删除 53
2.2.2 字符的查找与替换 54
2.3 gvim 55
2.3.1 文件的新建与保存 55
2.3.2 查找与替换 55
2.4 gedit 56
2.4.1 gedit的启动与打开文本 56
2.4.2 gedit编辑文件 57
2.4.3 gedit打印文件 58
2.4.4 gedit的首选项 59
2.5 小结 61
2.6 习题 61
第二篇 shell编程篇 62
第3章 Linux常用命令(教学视频:59分钟) 62
3.1 目录与文件命令 62
3.1.1 查看目录命令pwd 62
3.1.2 切换目录命令cd 62
3.1.3 查看目录命令ls 63
3.1.4 建立文件命令touch 64
3.1.5 建立与删除文件夹命令mkdir、rmdir 65
3.1.6 文件复制命令cp 65
3.1.7 文件移动和更名命令mv 66
3.1.8 删除文件与目录命令rm 66
3.1.9 创建链接命令ln 67
3.1.10 查看文件信息命令wc 67
3.1.11 文件查看命令cat 68
3.1.12 查看文件视图命令head与tail 68
3.1.13 文件权限设置命令chmod 69
3.1.14 查找文件命令find 70
3.2 man系统帮助命令 70
3.2.1 man手册的使用方法 71
3.2.2 帮助文档的结构 71
3.3 小结 72
3.4 习题 72
第4章 shell编程(教学视频:122分钟) 74
4.1 bash的使用 74
4.1.1 bash的内部命令与外部命令 74
4.1.2 命令补齐功能 74
4.1.3 命令通配符 75
4.1.4 使用命令的历史记录 75
4.1.5 命令的别名 76
4.2 shell程序的基本结构 76
4.3 局部变量 77
4.4 环境变量 78
4.4.1 环境变量的查看 78
4.4.2 访问环境变量 78
4.4.3 定义环境变量 78
4.4.4 在系统配置文件中定义环境变量 79
4.4.5 位置变量 79
4.5 shell的运算符 80
4.5.1 变量赋值 80
4.5.2 算术运算符 80
4.6 输入和输出 82
4.6.1 echo命令输出结果 82
4.6.2 read命令读取信息 83
4.6.3 文件重定向 84
4.7 引号的使用方法 85
4.7.1 双引号 85
4.7.2 单引号 85
4.7.3 反引号 86
4.7.4 反斜线 86
4.8 测试语句 86
4.8.1 文件状态测试 87
4.8.2 数值测试 87
4.8.3 字符串测试 88
4.8.4 逻辑测试 89
4.9 流程控制结构 89
4.9.1 if语句 89
4.9.3 for语句 90
4.9.5 until语句 91
4.10 综合练习 92
4.10.1 程序的功能 92
4.10.2 编写程序的代码 92
4.11 小结 94
4.12 习题 94
第三篇 C程序基础篇 95
第5章 编译与调试(教学视频:49分钟) 95
5.1 编译的概念和理解 95
5.1.1 程序编译的过程 95
5.1.2 编译器 95
5.2 gcc编译器 96
5.2.1 gcc编译器简介 96
5.2.2 gcc对源程序扩展名的支持 96
5.3 C程序的编译 97
5.3.1 编写第一个C程序 97
5.3.2 用gcc编译程序 98
5.3.3 查看gcc的参数 99
5.3.4 设置输出的文件 100
5.3.5 查看编译过程 100
5.3.6 设置编译的语言 101
5.3.7 设置ANSIC标准 101
5.3.8 编译C++程序 101
5.4 编译过程的控制 102
5.4.1 编译过程简介 102
5.4.2 控制预处理过程 103
5.4.3 生成汇编代码 103
5.4.4 生成目标代码 104
5.4.5 链接生成可执行文件 104
5.5 gdb调试程序 105
5.5.1 gdb简介 105
5.5.2 在程序中加入调试信息 105
5.5.4 启动gdb 105
5.5.5 加载需要调试的程序 106
5.5.6 查看代码 106
5.5.7 在程序中加入断点 106
5.5.8 查看断点 107
5.5.9 运行程序 107
5.5.10 变量的查看 108
5.6 gdb的帮助与常用命令 109
5.6.1 使用gdb帮助 109
5.6.2 gdb常用命令 109
5.7 编译程序常见的错误与问题 110
5.7.1 逻辑错误与语法错误 110
5.7.2 C程序中的错误与异常 110
5.7.3 编译中的警告提示 111
5.7.4 找不到包含文件的错误 111
5.7.5 错误地使用逗号 111
5.7.6 括号不匹配错误 111
5.8 综合练习 112
5.8.1 编写程序 112
5.8.2 编译文件 113
5.8.3 调试程序 113
5.9 小结 115
5.10 习题 115
第6章 C语言基础(教学视频:70分钟) 117
6.1 C程序的基本概念 117
6.1.1 C程序的基本结构 117
6.1.2 C程序的一般格式 118
6.1.3 C程序中的注释 119
6.2 数据类型 119
6.2.1 整型(int) 119
6.2.2 浮点型(float) 120
6.2.3 字符型(char) 121
6.2.4 变量名 122
6.2.5 字符NULL 123
6.3 变量的赋值与输出 123
6.3.1 变量的赋值 123
6.3.2 printf函数输出变量 123
6.3.3 scanf函数从键盘读入变量 125
6.4 运算符 126
6.4.1 算术运算符 126
6.4.2 关系运算符 127
6.4.3 逻辑运算符 128
6.5 综合练习 129
6.6 小结 130
6.7 习题 130
第7章 C程序的常用语句(教学视频:87分钟) 132
7.1 流程控制语句 132
7.1.1 if条件语句 132
7.1.2 if语句的嵌套 133
7.1.3 switch选择执行语句 135
7.1.4 for循环语句 137
7.1.5 for循环的嵌套 138
7.1.6 for循环应用实例:输出九九乘法口诀表 140
7.1.7 while循环语句 140
7.1.8 do while循环语句 141
7.1.9 转移控制语句:continue 142
7.1.10 转移控制语句:break 143
7.1.11 转移控制语句:return 144
7.2 两种特殊语句结构 144
7.2.1 ?三元操作符 145
7.2.2 块语句 145
7.3 综合练习 146
7.4 小结 147
7.5 习题 147
第四篇 指针与函数篇 149
第8章 数组与指针(教学视频:66分钟) 149
8.1 数组的理解与操作 149
8.1.1 什么是数组 149
8.1.2 数组的定义与访问 150
8.1.3 数组使用实例 151
8.2 指针 152
8.2.1 指针的理解 152
8.2.2 指针操作符 152
8.2.3 指针的定义与访问 152
8.2.4 指针使用实例 153
8.3 数组与指针 154
8.3.1 数组与指针的关系 154
8.3.2 指针的算术运算 155
8.3.3 字符数组与字符串 156
8.4 二维数组与多维数组 157
8.4.1 二维数组的理解 157
8.4.2 二维数组与指针 158
8.5 实例 159
8.5.1 学生成绩统计实例 159
8.5.2 冒泡法排序实例 160
8.5.3 统计字符串中字符 162
8.6 小结 164
8.7 习题 164
第9章 函数(教学视频:67分钟) 166
9.1 函数的理解 166
9.1.1 什么是函数 166
9.1.2 系统函数与库函数 167
9.1.3 函数的返回值 168
9.1.4 无参函数 169
9.1.5 有参函数 169
9.1.6 函数参数实例 170
9.2 自定义函数 171
9.2.1 自编写定义函数 171
9.2.2 函数中调用函数 172
9.2.3 函数的声明 174
9.2.4 递归函数 175
9.2.5 main函数的参数argc与argv 176
9.3 函数与指针 177
9.3.1 值调用与引用调用 177
9.3.2 引用调用与指针 178
9.3.3 指针参数简单实例 179
9.3.4 自定义函数中指针使用实例 180
9.3.5 数组作为参数 181
9.3.6 数组作为函数参数实例 182
9.4 返回值 183
9.4.1 函数返回值的类型 183
9.4.2 函数返回指针 184
9.4.3 函数返回指针实例 185
9.4.4 函数返回结果到参数 186
9.5 综合练习 186
9.6 小结 187
9.7 习题 188
第10章 字符与字符串处理(教学视频:66分钟) 190
10.1 字符测试函数 190
10.1.1 数字或字母测试函数isalnum 190
10.1.2 字母测试函数isalpha 191
10.1.3 可打印字符测试函数isgraph 192
10.1.4 测试大小写字母函数islower和isupper 193
10.1.5 测试是否是数字isxdigit 193
10.1.6 测试字符是否为符号函数ispunct 194
10.1.7 其他字符测试函数 195
10.2 字符测试函数综合实例 195
10.3 字符串转换 197
10.3.1 C程序中的字符串 197
10.3.2 字符串转换成浮点型函数atof 197
10.3.3 字符串转换成整型函数atoi 198
10.3.4 字符串转换成长整型函数atol 199
10.3.5 将浮点型转换成字符串函数ecvt 200
10.3.6 字母的大写小转换函数tolower和toupper 201
10.3.7 其他字符串转换函数 202
10.4 字符串比较 203
10.4.1 字符串比较函数bcmp 203
10.4.2 字符串大小比较函数memcmp 204
10.4.3 忽略大小写比较字符串函数strncasecmp 204
10.5 字符串复制 205
10.5.1 字符串复制函数bcopy 205
10.5.2 字符串复制函数memccpy 206
10.5.3 复制字符串函数strcpy 207
10.5.4 字符串复制函数strncpy 208
10.6 字符串的清理与填充 208
10.6.1 字符串清理函数bzero 209
10.6.2 字符串填充函数memset 209
10.7 字符串查找 210
10.7.1 字符查找函数index与rindex 210
10.7.2 字符查找函数memchr 211
10.7.3 字符查找函数strchr与strrchr 211
10.8 字符串的连接与分割 212
10.8.1 字符串连接函数strcat 212
10.8.2 字符串分割函数strtok 213
10.9 综合练习 214
10.10 小结 216
10.11 习题 216
第11章 结构体(教学视频:49分钟) 218
11.1 结构体的操作 218
11.1.1 结构体的理解 218
11.1.2 结构体的定义 218
11.1.3 结构体的访问 220
11.1.4 结构体数组 222
11.1.5 结构体使用实例 222
11.2 结构体与指针 224
11.2.1 结构体指针的定义 225
11.2.2 结构体指针的访问 225
11.2.3 结构体作为函数的参数 227
11.2.4 结构体指针作为函数的参数 228
11.2.5 结构体作为函数的返回值 230
11.2.6 结构体指针作为函数的返回值 231
11.3 综合练习 233
11.3.1 程序的需求分析 233
11.3.2 程序中的函数 234
11.3.3 程序中的结构体与全局变量 234
11.3.4 头文件和函数声明 234
11.3.5 定义结构体和全局变量 235
11.3.6 显示学生信息的函数 235
11.3.7 程序的选择菜单 235
11.3.8 学生信息输入函数 237
11.3.9 按姓名查找函数 237
11.3.10 删除学生函数 238
11.3.11 按年龄查找函数 238
11.3.12 按身高查找函数 239
11.3.13 按性别查找函数 240
11.3.14 程序的主函数 240
11.3.15 程序的运行和调试 242
11.4 小结 243
11.5 习题 243
第12章 时间函数(教学视频:23分钟) 245
12.1 常用时间函数 245
12.1.1 返回时间函数time 245
12.2.2 取当前时间函数gmtime 246
11.2.3 字符串格式时间函数ctime 248
12.2.4 字符串格式时间函数asctime 249
12.1.5 取得当地时间函数localtime 250
12.1.6 将时间转换成秒数函数mktime 251
12.1.7 取得目前的时间函数gettimeofday 251
12.1.8 设置当前时间函数settimeofday 253
12.2 综合练习 254
12.3 小结 254
12.4 习题 255
第五篇 文件与目录篇 256
第13章 目录与文件(教学视频:115分钟) 256
13.1 文件操作的权限 256
13.2 错误处理与错误号 257
13.2.1 错误定义的理解 257
13.2.2 用错误常数显示错误信息 258