简介
本书是C语言的入门教程,针对没有程序设计基础的读者,详细介绍了C语言的基本概念和编程技术。本书分为8篇共21章内容,第一篇为C语言入门篇,该篇介绍了C语言程序的特点及编程的准备。第二篇为C语言基础篇,该篇介绍了常量与变量、整型、字符型与浮点型和表达式与操作符等内容。第三篇为结构编程篇,该篇通过两章的篇幅讲解了选择结构和循环结构两种常用的程序结构。第四篇为数组和字符串篇,该篇通过两章的篇幅分别讲解了C语言中数组和字符串的应用。第五篇为函数篇,该篇主要内容包括函数、函数与文件、函数中的变量和字符串处理函数等。第六篇为指针篇,该篇通过两章的篇幅介绍了指针的重要概念和应用。第七篇为高级应用篇,该篇内容主要包括堆管理、位运算操作符、结构体、共用体、枚举和位域,以及预处理等。第八篇为综合案例篇,该篇以图书管理系统开发为例,详细介绍了C语言和文件处理开发的过程。
本书适合没有编程基础的C语言初学者作为入门教程,也可作为大、中专院校师生和培训班的教材,对于C语言开发的爱好者,本书也有较大的参考价值。
本书附赠DVD光盘1张,内容包括超大容量手把手视频、电子教案(PPT)、编程参考宝典电子书、源代码及各章习题答案。
目录
~第一篇 C语言入门篇 第1章 C语言与程序概述(精彩视频:36分钟)/1 1.1 C语言历史/1 1.1.1 C语言的诞生/1 1.1.2 C语言的标准化/2 1.1.3 C语言的特点/2 1.1.4 Hello, world!/3 1.2 数据结构与算法/4 1.2.1 数据结构/4 1.2.2 算法简介/6 1.3 程序设计/7 1.3.1 结构化程序设计/7 1.3.2 三种基本结构/7 1.3.3 算法描述方法/9 1.4 综合练习/11 1.5 小结/13 1.6 习题/13 第2章 C语言编程准备(精彩视频:21分钟)/15 2.1 C程序介绍/15 2.1.1 两个简单的C程序/15 2.1.2 C程序的一些特点/17 2.1.3 标识符与关键字/17 2.1.4 编译、链接和运行/18 2.2 在不同的开发环境中开发C程序/19 2.2.1 Turbo C/19 2.2.2 Visual C++ 2005/21 2.2.3 GCC 3.2.2/23 2.3 综合练习/24 2.4 小结/24 2.5 习题/25 第二篇 C语言基础篇 第3章 常量与变量(精彩视频:39分钟)/26 3.1 常量与变量/26 3.1.1 常量/26 3.1.2 变量/27 3.2 变量的使用/28 3.2.1 声明变量/28 3.2.2 定义变量/29 3.2.3 使用extern声明变量/29 3.2.4 赋值和初始化/30 3.2.5 地址操作符和指针操作符/32 3.3 格式化输入输出/33 3.3.1 printf函数/33 3.3.2 scanf函数/34 3.4 数据类型/35 3.5 综合练习/35 3.6 小结/36 3.7 习题/37 第4章 整型、字符型与浮点型(精彩视频:89分钟)/38 4.1 整型数据类型/38 4.1.1 字节长度/38 4.1.2 修饰符signed和unsigned/39 4.1.3 整型常量/39 4.1.4 整型变量/40 4.1.5 整型的存储方式/41 4.1.6 整型的数值范围/42 4.2 字符型数据类型/45 4.2.1 字节长度/45 4.2.2 字符常量/46 4.2.3 字符变量/48 4.2.4 字符型的存储方式/49 4.3 浮点型数据类型/49 4.3.1 字节长度/49 4.3.2 浮点型常量/50 4.3.3 浮点型变量/50 4.3.4 浮点型的精度/50 4.3.5 浮点型的数值范围/51 4.3.6 浮点型的存储方式/53 4.4 使用typedef定义类型/55 4.4.1 typedef的标准形式/55 4.4.2 合理使用typedef/56 4.5 限定词const与volatile/57 4.5.1 使用const/57 4.5.2 使用volatile/58 4.6 综合练习/59 4.7 小结/60 4.8 习题/60 第5章 表达式与操作符(精彩视频:167分钟)/62 5.1 表达式和语句/62 5.1.1 表达式/62 5.1.2 语句/64 5.1.3 复合语句/64 5.1.4 C语言操作符/66 5.2 赋值操作符与赋值表达式/67 5.2.1 赋值操作符/67 5.2.2 赋值操作符的结合性/68 5.2.3 左值和右值/68 5.2.4 赋值表达式中的类型转换/69 5.2.5 类型转换操作符/71 5.3 运算操作符与运算表达式/72 5.3.1 运算操作符/72 5.3.2 符号操作符/74 5.3.3 优先级与结合性/75 5.3.4 数值运算中的类型转换/77 5.3.5 复合的赋值操作符/78 5.4 自增、自减操作符/80 5.4.1 自增操作符/80 5.4.2 自减操作符/82 5.4.3 优先级与结合性/83 5.4.4 词法分析:贪婪法/84 5.4.5 自增、自减操作符的副作用/86 5.5 关系操作符与关系表达式/87 5.5.1 使用关系操作符/87 5.5.2 关系表达式的值/89 5.5.3 优先级与结合性/90 5.6 逻辑操作符与逻辑表达式/91 5.6.1 使用逻辑操作符/91 5.6.2 逻辑表达式的值/92 5.6.3 优先级和结合性/93 5.6.4 化简逻辑表达式/94 5.7 逗号操作符与逗号表达式/94 5.7.1 使用逗号操作符/94 5.7.2 逗号表达式的值/95 5.8 操作符优先级和结合性/96 5.8.1 优先级和结合性/96 5.8.2 使用小括号/98 5.8.3 减少语句的副作用/99 5.9 综合练习/101 5.10 小结/102 5.11 习题/102 第三篇 结构编程篇 第6章 选择结构(精彩视频:66分钟)/104 6.1 if语句/104 6.1.1 使用if语句/104 6.1.2 else和if的配对使用/107 6.1.3 选择结构中的不平等分支/108 6.1.4 判断表达式中的=与==/109 6.2 switch语句/110 6.2.1 使用switch语句/111 6.2.2 break语句/111 6.2.3 else if语句和switch语句/114 6.2.4 switch中的标号/115 6.2.5 使用具名常量组成标号/116 6.3 条件操作符与条件表达式/118 6.3.1 使用条件操作符/118 6.3.2 条件表达式与if-else/118 6.3.3 条件表达式中的类型转换/119 6.3.4 条件表达式的嵌套/120 6.4 逻辑表达式的隐式选择/120 6.4.1 逻辑表达式的特点/120 6.4.2 隐式选择的作用/121 6.4.3 巧用隐式选择/122 6.5 综合练习/123 6.6 小结/124 6.7 习题/124 第7章 循环结构(精彩视频:86分钟)/126 7.1 for语句/126 7.1.1 使用for语句/126 7.1.2 for头中的三个表达式/126 7.1.3 for头中的逗号表达式/128 7.1.4 for语句的嵌套/129 7.1.5 for语句使用举例/129 7.2 while语句/131 7.2.1 使用while语句/131 7.2.2 while语句与for语句/132 7.2.3 while语句使用举例/133 7.3 do-while语句/135 7.3.1 使用do-while语句/135 7.3.2 do-while语句与while语句/135 7.3.3 do-while语句使用举例/136 7.4 continue语句与break语句/138 7.4.1 使用continue语句/138 7.4.2 continue语句与if语句/140 7.4.3 循环结构中的break语句/140 7.4.4 使用break语句终止多层循环/142 7.5 goto语句/143 7.5.1 goto语句的标准形式/143 7.5.2 搭配使用goto语句与if语句/144 7.5.3 慎用goto语句/145 7.6 基本结构的嵌套使用/147 7.6.1 if-while与while-if/147 7.6.2 使用选择结构包含循环结构/148 7.7 综合练习/149 7.8 小结/150 7.9 习题/150 第四篇 数组和字符串篇 第8章 数组(精彩视频:79分钟)/152 8.1 一维数组/152 8.1.1 定义一维数组/152 8.1.2 访问一维数组/153 8.1.3 未初始化的一维数组/154 8.1.4 初始化数组/155 8.1.5 数组元素地址/157 8.1.6 数组越界/158 8.1.7 一维数组使用举例/159 8.2 二维数组/162 8.2.1 定义二维数组/162 8.2.2 访问二维数组/163 8.2.3 二维数组的存储方式/164 8.2.4 初始化二维数组/164 8.2.5 二维数组使用举例/165 8.3 多维数组/167 8.3.1 定义多维数组/167 8.3.2 多维数组使用举例/167 8.4 综合练习/168 8.5 小结/169 8.6 习题/169 第9章 字符串(精彩视频:68分钟)/171 9.1 字符数组/171 9.1.1 定义和赋值字符数组/171 9.1.2 字符数组的初始化/173 9.1.3 二维字符数组/173 9.1.4 字符数组使用举例/175 9.2 字符串常量与字符串变量/178 9.2.1 字符串常量/178 9.2.2 字符串变量/180 9.2.3 格式化输出字符串/180 9.2.4 字符终止符的作用/181 9.2.5 格式化输入字符串/182 9.3 字符串应用举例/182 9.3.1 使用strlen函数/182 9.3.2 统计单词数/183 9.3.3 颠倒单词顺序/185 9.3.4 颠倒单词顺序——改进/186 9.4 综合练习/188 9.5 小结/189 9.6 习题/189 第五篇 函数篇 第10章 函数(精彩视频:63分钟)/191 10.1 什么是函数/191 10.1.1 模块化编程/191 10.1.2 定义函数/194 10.1.3 调用函数/194 10.1.4 函数使用举例/196 10.1.5 范例的改进/197 10.2 函数声明/198 10.2.1 声明的形式/199 10.2.2 声明与定义/199 10.3 函数值与形参列表/200 10.3.1 函数值类型/200 10.3.2 形参列表/202 10.3.3 函数值/203 10.3.4 使用const形参/206 10.4 函数体/208 10.4.1 定义变量/208 10.4.2 检查形参/209 10.4.3 return语句/209 10.5 main函数/211 10.5.1 main函数的声明/211 10.5.2 函数值类型/211 10.5.3 向main函数传递参数/212 10.6 综合练习/215 10.7 小结/216 10.8 习题/216 第11章 函数与文件(精彩视频:47分钟)/218 11.1 多文件的程序/218 11.1.1 源文件和头文件/218 11.1.2 C工程的组织结构/219 11.1.3 一个简单的多文件工程/220 11.2 创建和运行多文件工程/222 11.2.1 Turbo C/222 11.2.2 Visual C++ 2005/223 11.2.3 GCC 3.2.2/223 11.3 函数的调用/223 11.3.1 嵌套调用/223 11.3.2 递归调用/225 11.3.3 递归调用使用举例/226 11.4 内部函数与外部函数/230 11.4.1 外部函数/230 11.4.2 内部函数/231 11.4.3 应用举例/231 11.5 综合练习/233 11.6 小结/234 11.7 习题/234 第12章 函数中的变量(精彩视频:60分钟)/236 12.1 生存期和作用域/236 12.1.1 生存期/236 12.1.2 作用域/237 12.2 局部变量和全局变量/239 12.2.1 局部变量/239 12.2.2 全局变量/240 12.2.3 初始化全局变量/242 12.2.4 合理使用全局变量/243 12.2.5 同名变量和变量屏蔽/244 12.3 变量的存储类别/247 12.3.1 内存存储区/247 12.3.2 auto变量/247 12.3.3 static局部变量/248 12.3.4 register变量/250 12.3.5 extern变量/251 12.3.6 static全局变量/251 12.4 综合练习/252 12.5 小结/253 12.6 习题/253 第13章 字符串处理函数(精彩视频:38分钟)/255 13.1 输入和输出函数/255 13.1.1 putchar函数和getchar函数/255 13.1.2 puts函数和gets函数/256 13.2 复制和拼接/257 13.2.1 strcpy函数/257 13.2.2 strncpy函数/258 13.2.3 strcat函数和strncat函数/260 13.3 比较和转换/261 13.3.1 strncmp函数和strcmp函数/261 13.3.2 strupr函数和strlwr函数/263 13.4 综合练习/264 13.5 小结/264 13.6 习题/265 第六篇 指针篇 第14章 指针(精彩视频:60分钟)/266 14.1 什么是指针/266 14.1.1 访问内存的两种方式/266 14.1.2 指针的概念/267 14.1.3 指针变量的定义/267 14.2 指针的使用/268 14.2.1 指针变量的一次赋值/268 14.2.2 指针变量的多次赋值/270 14.2.3 将指针变量赋值为整数/272 14.2.4 初始化指针变量/273 14.2.5 使用const声明指针变量/273 14.3 指针与函数/274 14.3.1 指针形参/274 14.3.2 指针型函数值/276 14.3.3 函数型指针/277 14.4 void型指针/279 14.4.1 void型指针的含义/279 14.4.2 void指针型形参/279 14.4.3 void指针型函数值/280 14.5 综合练习/280 14.6 小结/281 14.7 习题/281 第15章 再论指针(精彩视频:68分钟)/283 15.1 指针与数组/283 15.1.1 指向数组元素的指针/283 15.1.2 使用指针访问数组/283 15.1.3 数组元素型指针和数组变量/285 15.1.4 声明数组形参的三种方式/287 15.1.5 使用三种声明方式/288 15.1.6 调用含数组形参的函数/288 15.2 指针与二维数组/289 15.2.1 二维数组的地址/289 15.2.2 指针法访问二维数组/292 15.2.3 二维数组形参/293 15.3 指针与字符/297 15.3.1 字符指针/297 15.3.2 使用字符指针/299 15.3.3 字符串数组和字符指针数组/301 15.4 综合练习/302 15.5 小结/303 15.6 习题/303 第七篇 高级应用篇 第16章 堆管理(精彩视频:24分钟)/305 16.1 分配和释放/305 16.1.1 malloc函数和memset函数/305 16.1.2 free函数/306 16.2 其他分配函数/307 16.2.1 calloc函数/307 16.2.2 realloc函数/308 16.3 动态数组的实现/310 16.4 综合练习/311 16.5 小结/312 16.6 习题/312 第17章 位运算操作符(精彩视频:50分钟)/313 17.1 位运算/313 17.1.1 字节与位/313 17.1.2 补码/313 17.2 位运算操作符/314 17.2.1 取反操作符(~~)/314 17.2.2 位或操作符(|)/315 17.2.3 位与操作符(&)/317 17.2.4 异或操作符(^)/320 17.2.5 右移操作符(>>)/322 17.2.6 左移操作符( 17.2.7 位运算赋值操作符/325 17.3 位运算操作符使用举例/325 17.3.1 循环移位/325 17.3.2 使用子网掩码/327 17.4 综合练习/328 17.5 小结/328 17.6 习题/328 第18章 结构体(精彩视频:46分钟)/330 18.1 结构体/330 18.1.1 结构体类型的概念/330 18.1.2 定义结构体变量/331 18.1.3 结构体的字节长度/332 18.2 结构体的使用/334 18.2.1 访问结构体成员/334 18.2.2 初始化结构体变量/335 18.2.3 浅复制和深复制/337 18.3 结构体数组/339 18.3.1 定义结构体数组/339 18.3.2 初始化结构体数组/340 18.3.3 结构体数组使用举例/341 18.4 结构体指针/342 18.4.1 指向结构体变量的指针/342 18.4.2 指向堆空间的结构体指针/343 18.4.3 指向结构体数组元素的指针/344 18.5 综合练习/345 18.6 小结/346 18.7 习题/347 第19章 共用体、枚举和位域(精彩视频:33分钟)/348 19.1 共用体/348 19.1.1 共用体类型/348 19.1.2 共用体变量/349 19.2 枚举/351 19.2.1 定义枚举类型/351 19.2.2 枚举类型的使用/352 19.3 位域/354 19.3.1 位域的概念/354 19.3.2 位域的字长/355 19.3.3 位域成员的内存分布/356 19.4 综合练习/358 19.5 小结/360 19.6 习题/360 第20章 预处理(精彩视频:61分钟)/362 20.1 宏定义/362 20.2 宏对象/363 20.2.1 使用宏对象/363 20.2.2 代替常用字符串/364 20.2.3 说明形参属性/366 20.2.4 宏定义的作用域/367 20.2.5 标准宏对象/368 20.3 宏函数/368 20.3.1 使用宏函数/368 20.3.2 宏函数与函数/369 20.4 条件编译/370 20.4.1 #ifdef命令/371 20.4.2 #ifndef命令/373 20.4.3 #if命令/374 20.4.4 defined宏函数/375 20.5 文件包含/375 20.5.1 使用文件包含/375 20.5.2 重复包含和循环包含/377 20.6 综合练习/377 20.7 小结/378 20.8 习题/378 第八篇 综合案例篇 第21章 图书管理系统开发实例(精彩视频:46分钟)/380 21.1 需求分析/380 21.2 系统设计/380 21.2.1 系统架构/380 21.2.2 数据结构/381 21.3 main模块/382 21.4 用户界面模块/383 21.4.1 程序流程/383 21.4.2 代码实现/383 21.4.3 编写menu_main函数:打印主界面和第一级菜单/384 21.4.4 编写menu_choice函数/385 21.4.5 编写menu_add函数:打印增加书籍的二级菜单/385 21.4.6 编写menu_delete函数:输出删除书籍的二级菜单/386 21.4.7 编写menu_search函数:输出搜索书籍的二级菜单/388 21.4.8 编写menu_reload函数:输出载入书籍数据的二级菜单/388 21.4.9 编写menu_exit函数:退出所有二级菜单/388 21.5 日志模块/388 21.5.1 打开和关闭文件/389 21.5.2 文件的格式化读写/389 21.5.3 打开和关闭日志文件/390 21.5.4 log_error函数和log_activity函数/390 21.6 数据管理模块/391 21.6.1 处理TimeInfor数据/391 21.6.2 处理BookInfor数据/392 21.6.3 增加书籍/393 21.6.4 删除书籍/394 21.6.5 查询书籍/395 21.6.6 从文件导入数据/395 21.7 小结/396~
21天学通C语言
- 名称
- 类型
- 大小
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×
亲爱的云图用户,
光盘内的文件都可以直接点击浏览哦
无需下载,在线查阅资料!