编辑推荐
null
内容简介
《C语言从入门到精通(第4版)》从初学者的角度出发,以通俗易懂的语言,丰富多彩的实例,详细介绍了使用C语言进行程序开发需要掌握的各方面知识。全书共分为17章,包括C语言概述、算法、数据类型、运算符与表达式、常用的数据输入/输出函数、选择结构程序设计、循环控制、数组、函数、指针、结构体和共用体、位运算、预处理、文件、存储管理、网络套接字编程和学生成绩管理系统。
作者介绍
明日科技,是一个拥有软件开发和项目实施方面的资深专家和学习型技术团队,利用积累的专业知识和经验,已开发出版了“从入门到精通”“软件开发实战1200例”“软件开发实战宝典”“软件项目开发全程实录”等系列丛书,是国内畅销的编程图书品牌。
目 录
资源包“开发资源库”目录…………XIII 第1篇 基 础 知 识 第1章 C语言概述 2 视频讲解:33分钟 1.1 C语言的发展史 3 1.1.1 程序语言简述 3 1.1.2 C语言的历史 3 1.2 C语言的特点 4 1.3 一个简单的C程序 5 1.4 一个完整的C程序 7 1.5 C语言程序的格式 11 1.6 开发环境 12 1.6.1 Visual C 6.0 12 1.6.2 Visual Studio 2017 19 1.7 小结 25 第2章 算法 26 视频讲解:22分钟 2.1 算法的基本概念 27 2.1.1 算法的特性 27 2.1.2 算法的优劣 28 2.2 算法的描述 28 2.2.1 自然语言 29 2.2.2 流程图 29 2.2.3 N-S流程图 32 2.3 小结 34 第3章 数据类型 35 视频讲解:39分钟 3.1 编程规范 36 3.2 关键字 37 3.3 标识符 37 3.4 数据类型 38 3.5 常量 39 3.5.1 整型常量 40 3.5.2 实型常量 42 3.5.3 字符型常量 43 3.5.4 转义字符 46 3.5.5 符号常量 46 3.6 变量 47 3.6.1 整型变量 47 3.6.2 实型变量 50 3.6.3 字符型变量 52 3.7 变量的存储类别 53 3.7.1 静态存储与动态存储 54 3.7.2 auto变量 54 3.7.3 static变量 55 3.7.4 register变量 55 3.7.5 extern变量 56 3.8 混合运算 57 3.9 小结 58 3.10 实践与练习 58 第4章 运算符与表达式 59 视频讲解:31分钟 4.1 表达式 60 4.2 赋值运算符与赋值表达式 62 4.2.1 变量赋初值 62 4.2.2 自动类型转换 64 4.2.3 强制类型转换 64 4.3 算术运算符与算术表达式 65 4.3.1 算术运算符 65 4.3.2 算术表达式 66 4.3.3 优先级与结合性 67 4.3.4 自增/自减运算符 69 4.4 关系运算符与关系表达式 71 4.4.1 关系运算符 71 4.4.2 关系表达式 71 4.4.3 优先级与结合性 72 4.5 逻辑运算符与逻辑表达式 73 4.5.1 逻辑运算符 74 4.5.2 逻辑表达式 74 4.5.3 优先级与结合性 74 4.6 位逻辑运算符与位逻辑表达式 75 4.6.1 位逻辑运算符 76 4.6.2 位逻辑表达式 76 4.7 逗号运算符与逗号表达式 76 4.8 复合赋值运算符 78 4.9 小结 79 4.10 实践与练习 80 第5章 常用的数据输入/输出函数 81 视频讲解:40分钟 5.1 语句 82 5.2 字符数据输入/输出 82 5.2.1 字符数据输出 82 5.2.2 字符数据输入 83 5.3 字符串输入/输出 85 5.3.1 字符串输出函数 85 5.3.2 字符串输入函数 86 5.4 格式输出函数 87 5.5 格式输入函数 90 5.6 顺序程序设计应用 94 5.7 小结 96 5.8 实践与练习 96 第6章 选择结构程序设计 97 视频讲解:39分钟 6.1 if语句 98 6.2 if语句的基本形式 98 6.2.1 if语句形式 98 6.2.2 if…else语句形式 101 6.2.3 else if语句形式 105 6.3 if的嵌套形式 108 6.4 条件运算符 111 6.5 switch语句 112 6.5.1 switch语句的基本形式 113 6.5.2 多路开关模式的switch语句 116 6.6 if…else语句和switch语句的区别 118 6.7 小结 120 6.8 实践与练习 120 第7章 循环控制 121 视频讲解:43分钟 7.1 循环语句 122 7.2 while语句 122 7.3 do…while语句 125 7.4 for语句 127 7.4.1 for语句使用 127 7.4.2 for循环的变体 130 7.4.3 for语句中的逗号应用 132 7.5 3种循环语句的比较 134 7.6 循环嵌套 134 7.6.1 循环嵌套的结构 134 7.6.2 循环嵌套实例 135 7.7 转移语句 137 7.7.1 goto语句 137 7.7.2 break语句 139 7.7.3 continue语句 140 7.8 小结 141 7.9 实践与练习 141 第2篇 核 心 技 术 第8章 数组 144 视频讲解:1小时7分钟 8.1 一维数组 145 8.1.1 一维数组的定义和引用 145 8.1.2 一维数组初始化 147 8.1.3 一维数组的应用 149 8.2 二维数组 150 8.2.1 二维数组的定义和引用 150 8.2.2 二维数组初始化 151 8.2.3 二维数组的应用 154 8.3 字符数组 155 8.3.1 字符数组的定义和引用 155 8.3.2 字符数组初始化 156 8.3.3 字符数组的结束标志 158 8.3.4 字符数组的输入和输出 159 8.3.5 字符数组的应用 160 8.4 多维数组 161 8.5 数组的排序算法 161 8.5.1 选择法排序 162 8.5.2 冒泡法排序 164 8.5.3 交换法排序 165 8.5.4 插入法排序 168 8.5.5 折半法排序 170 8.5.6 排序算法的比较 172 8.6 字符串处理函数 173 8.6.1 字符串复制 173 8.6.2 字符串连接 174 8.6.3 字符串比较 176 8.6.4 字符串大小写转换 177 8.6.5 获得字符串长度 179 8.7 数组应用 180 8.7.1 反转输出字符串 180 8.7.2 输出系统日期和时间 181 8.7.3 字符串的加密和解密 183 8.8 小结 185 8.9 实践与练习 185 第9章 函数 186 视频讲解:55分钟 9.1 函数概述 187 9.2 函数的定义 189 9.2.1 函数定义的形式 189 9.2.2 定义与声明 191 9.3 返回语句 193 9.3.1 从函数返回 193 9.3.2 返回值 194 9.4 函数参数 196 9.4.1 形式参数与实际参数 196 9.4.2 数组作函数参数 198 9.4.3 main函数的参数 204 9.5 函数的调用 205 9.5.1 函数的调用方式 205 9.5.2 嵌套调用 208 9.5.3 递归调用 210 9.6 内部函数和外部函数 212 9.6.1 内部函数 213 9.6.2 外部函数 214 9.7 局部变量和全局变量 215 9.7.1 局部变量 215 9.7.2 全局变量 218 9.8 函数应用 220 9.9 小结 226 9.10 实践与练习 227 第10章 指针 228 视频讲解:1小时2分钟 10.1 指针相关概念 229 10.1.1 地址与指针 229 10.1.2 变量与指针 229 10.1.3 指针变量 230 10.1.4 指针自加自减运算 234 10.2 数组与指针 236 10.2.1 一维数组与指针 236 10.2.2 二维数组与指针 240 10.2.3 字符串与指针 243 10.2.4 字符串数组 245 10.3 指向指针的指针 246 10.4 指针变量作函数参数 249 10.5 返回指针值的函数 258 10.6 指针数组作main函数的参数 260 10.7 小结 262 10.8 实践与练习 262 第3篇 高 级 应 用 第11章 结构体和共用体 264 视频讲解:40分钟 11.1 结构体 265 11.1.1 结构体类型的概念 265 11.1.2 结构体变量的定义 266 11.1.3 结构体变量的引用 268 11.1.4 结构体类型的初始化 270 11.2 结构体数组 272 11.2.1 定义结构体数组 272 11.2.2 初始化结构体数组 274 11.3 结构体指针 276 11.3.1 指向结构体变量的指针 276 11.3.2 指向结构体数组的指针 279 11.3.3 结构体作为函数参数 281 11.4 包含结构的结构 283 11.5 链表 285 11.5.1 链表概述 285 11.5.2 创建动态链表 286 11.5.3 输出链表 289 11.6 链表相关操作 291 11.6.1 链表的插入操作 291 11.6.2 链表的删除操作 293 11.7 共用体 297 11.7.1 共用体的概念 297 11.7.2 共用体变量的引用 298 11.7.3 共用体变量的初始化 299 11.7.4 共用体类型的数据特点 300 11.8 枚举类型 300 11.9 小结 301 11.10 实践与练习 302 第12章 位运算 303 视频讲解:36分钟 12.1 位与字节 304 12.2 位运算操作符 304 12.2.1 “与”运算符 304 12.2.2 “或”运算符 306 12.2.3 “取反”运算符 307 12.2.4 “异或”运算符 308 12.2.5 “左移”运算符 310 12.2.6 “右移”运算符 311 12.3 循环移位 312 12.4 位段 315 12.4.1 位段的概念与定义 315 12.4.2 位段相关说明 316 12.5 小结 318 12.6 实践与练习 318 第13章 预处理 319 视频讲解:40分钟 13.1 宏定义 320 13.1.1 不带参数的宏定义 320 13.1.2 带参数的宏定义 321 13.2 #include指令 323 13.3 条件编译 325 13.3.1 #if命令 325 13.3.2 #ifdef及#ifndef命令 328 13.3.3 #undef命令 329 13.3.4 #line命令 330 13.3.5 #pragma命令 330 13.4 小结 331 13.5 实践与练习 331 第14章 文件 332 视频讲解:58分钟 14.1 文件概述 333 14.2 文件基本操作 333 14.2.1 文件指针 333 14.2.2 文件的打开 334 14.2.3 文件的关闭 335 14.3 文件的读写 335 14.3.1 fputc函数 335 14.3.2 fgetc函数 336 14.3.3 fputs函数 337 14.3.4 fgets函数 338 14.3.5 fprintf函数 339 14.3.6 fscanf函数 340 14.3.7 fread和fwrite函数 341 14.4 文件的定位 343 14.4.1 fseek函数 343 14.4.2 rewind函数 345 14.4.3 ftell函数 346 14.5 小结 349 14.6 实践与练习 349 第15章 存储管理 350 视频讲解:22分钟 15.1 内存组织方式 351 15.1.1 内存的组织方式 351 15.1.2 堆与栈 351 15.2 动态管理 353 15.2.1 malloc函数 353 15.2.2 calloc函数 354 15.2.3 realloc函数 355 15.2.4 free函数 356 15.3 内存丢失 357 15.4 小结 358 15.5 实践与练习 358 第16章 网络套接字编程 359 视频讲解:39分钟 16.1 计算机网络基础 360 16.1.1 IP地址 360 16.1.2 OSI七层参考模型 360 16.1.3 地址解析 361 16.1.4 域名系统 362 16.1.5 TCP/IP协议 362 16.1.6 端口 364 16.1.7 套接字的引入 364 16.1.8 网络字节顺序 364 16.2 套接字基础 365 16.2.1 套接字概述 365 16.2.2 TCP的套接字的socket编程 365 16.2.3 UDP的套接字的socket编程 366 16.3 套接字函数 367 16.3.1 套接字函数介绍 367 16.3.2 基于TCP的网络聊天程序 372 16.4 小结 378 16.5 实践与练习 378 第4篇 项 目 实 战 第17章 学生成绩管理系统 380 视频讲解:40分钟 17.1 需求分析 381 17.2 系统设计 381 17.3 功能设计 382 17.3.1 功能选择界面 382 17.3.2 录入学生成绩信息 383 17.3.3 查询学生成绩信息 386 17.3.4 删除学生成绩信息 387 17.3.5 修改学生成绩信息 388 17.3.6 插入学生成绩信息 390 17.3.7 统计学生人数 392 17.4 小结 392 附录 ASCII表 393
媒体评论
null