书籍作者:明日科技 | ISBN:9787569208535 |
书籍语言:简体中文 | 连载状态:全集 |
电子书格式:pdf,txt,epub,mobi,azw3 | 下载次数:5169 |
创建日期:2021-02-14 | 发布日期:2021-02-14 |
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板 |
《零基础学C语言》是针对零基础编程学习者研发的C语言入门教程。从初学者角度出发,通过通俗易懂的语言、流行有趣的实例,详细地介绍了使用C语言进行程序开发需要掌握的知识和技术。全书共分18章,包括C语言概述、开发环境的搭建、算法、C语言基础、运算符与表达式、常用的数据输入/输出函数、选择结构程序设计、循环控制、数组、结构体与链表、共用体与枚举类型、位运算、预处理、文件、存储管理,以及学生成绩管理系统等。书中所有知识都结合具体实例进行讲解,设计的程序代码给出了详细的注释,可以使读者轻松领会C语言程序开发的精髓,快速提高开发技能。
本书通过大量实例及一个完整项目案例,帮助读者更好地巩固所学知识,提升能力;随书附赠的《小白实战手册》中给出了3个流行且实用的案例的详细开发流程,力求让学习者能学以致用,真正获得开发经验;附赠的光盘中给出视频讲解、实例及项目源码、代码查错器、练一练和动手纠错答案等,方便读者学习;书中设置了130多个二维码,扫描二维码观看视频讲解,解决学习疑难;不易理解的专业术语、代码难点只需手机扫描文字下方的e学码获得更多扩展解释,随时扫除学习障碍。此外,登录明日学院网站(www.mingrisoft.com)还可以获得更多学习资源和技术支持。
图书与《小白实战手册》+光盘+二维码+e学码+明日学院,实现立体化、全方位的教学模式,拉低编程门槛,让零基础者轻松跨入编程领域。
明日科技,是一家专业从事软件开发、教育培训以及软件开发教育资源整合的高科技公司,其编写的教材既注重选取软件开发中的必需、常用内容,又注重内容的易学、方便以及相关知识的拓展,深受读者喜爱。其编写的图书主要有“从入门到精通”“软件开发视频大讲堂”“软件开发实战1200例”“软件工程师开发大系”等多个系列。多次荣获“全行业优xiu畅销品种”“中国大学出版社优xiu畅销书”等奖项,多个品种长期位居同类图书销售排行榜的前列。
第1篇基础知识
第1章C语言概述
1.1C语言的发展史
1.1.1程序语言简述
1.1.2C语言的发展与应用
1.2C语言的特点
1.3VisualC++6.0开发环境
1.3.1VisualC++6.0的下载与安装
1.3.2VisualC++6.0创建C文件
1.4一个简单的C程序
1.5一个完整的C程序
1.6C语言程序的格式
1.7小结
第2章算法
2.1算法的基本概念
2.1.1算法的特性
2.1.2算法的优劣
2.2算法的描述
2.2.1自然语言
2.2.2流程图
2.2.3N-S流程图
2.3难点解答
2.3.1当型循环和直到型循环有什么不同?
2.3.2如何设计一个好的算法?
2.4小结
第3章C语言基础
3.1关键字
3.2标识符
3.3数据类型
3.4常量
3.4.1整型常量
3.4.2实型常量
3.4.3字符型常量
3.4.4转义字符
3.4.5符号常量
3.5变量
3.5.1整型变量
3.5.2实型变量
3.5.3字符型变量
3.6变量的存储类别
3.6.1auto变量
3.6.2static变量
3.6.3register变量
3.6.4extern变量
3.7混合运算
3.8难点解答
3.8.1变量的赋值和初始化
3.8.2如何合理定义变量的类型?
3.9小结
3.10动手纠错
第4章运算符与表达式
4.1表达式
4.2赋值运算符与赋值表达式
4.2.1变量赋初值
4.2.2自动类型转换
4.2.3强制类型转换
4.3算术运算符与算术表达式
4.3.1算术运算符
4.3.2算术表达式
4.3.3优先级与结合性
4.3.4自增/自减运算符
4.4关系运算符与关系表达式
4.4.1关系运算符
4.4.2关系表达式
4.4.3优先级与结合性
4.5逻辑运算符与逻辑表达式
4.5.1逻辑运算符
4.5.2逻辑表达式
4.5.3优先级与结合性
4.6位逻辑运算符与位逻辑表达式
4.6.1位逻辑运算符
4.6.2位逻辑表达式
4.7逗号运算符与逗号表达式
4.8复合赋值运算符
4.9难点解答
4.9.1自增前缀与自增后缀的区别(例如:++i,i++)
4.9.2逗号表达式的要领
4.10小结
4.11动手纠错
第5章常用的数据输入/输出函数
5.1语句
5.2字符数据输入/输出
5.2.1字符数据输出
5.2.2字符数据输入
5.3字符串输入/输出
5.3.1字符串输出函数
5.3.2字符串输入函数
5.4格式输出函数
5.5格式输入函数
5.6难点解答
5.6.1putchar()、puts()和printf()三个函数的区别
5.6.2getchar()、gets()和scanf()三个函数的区别
5.7小结
5.8动手纠错
第6章选择结构程序设计
6.1if语句
6.2if语句的基本形式
6.2.1if语句形式
6.2.2if…else语句形式
6.2.3elseif语句形式
6.3if语句的嵌套
6.4条件运算符
6.5switch语句
6.5.1switch语句的基本形式
6.5.2多路开关模式的switch语句
6.6if…else语句和switch语句的区别
6.7难点解答
6.7.1if…else和elseif语句的区别
6.7.2if和if…else语句的区别
6.8小结
6.9动手纠错
第7章循环控制
7.1循环语句
7.2while语句
7.3do…while语句
7.4for语句
7.4.1for语句使用
7.4.2for循环的变体
7.4.3for语句中的逗号应用
7.53种循环语句的比较
7.6循环嵌套
7.6.1循环嵌套的结构
7.6.2循环嵌套实例
7.7转移语句
7.7.1break语句
7.7.2continue语句
7.7.3goto语句
7.8难点解答
7.8.1continue和break语句的区别
7.8.2while和do…while语句的区别
7.9小结
7.10动手纠错
第2篇核心技术
第8章数组
8.1一维数组
8.1.1一维数组的定义和引用
8.1.2一维数组初始化
8.1.3一维数组应用
8.2二维数组
8.2.1二维数组的定义和引用
8.2.2二维数组初始化
8.2.3二维数组应用
8.3字符数组
8.3.1字符数组的定义和引用
8.3.2字符数组初始化
8.3.3字符数组的结束标志
8.3.4字符数组的输入和输出
8.3.5字符数组应用
8.4多维数组
8.5数组的排序算法
8.5.1选择法排序
8.5.2冒泡法排序
8.5.3交换法排序
8.5.4插入法排序
8.5.5折半法排序
8.5.6排序算法的比较
8.6字符串处理函数
8.6.1字符串复制
8.6.2字符串连接
8.6.3字符串比较
8.6.4字符串大小写转换
8.6.5获得字符串长度
8.7数组应用
8.7.1反转输出字符串
8.7.2输出系统日期和时间
8.8难点解答
8.8.1数组下标越界
8.8.2为什么使用数组
8.9小结
8.10动手纠错
第9章函数
9.1函数概述
9.2函数的定义
9.2.1函数定义的形式
9.2.2定义与声明
9.3返回语句
9.3.1无返回值函数
9.3.2返回值
9.4函数参数
9.4.1形式参数与实际参数
9.4.2数组作函数参数
9.4.3main函数的参数
9.5函数的调用
9.5.1函数的调用方式
9.5.2嵌套调用
9.5.3递归调用
9.6内部函数和外部函数
9.6.1内部函数
9.6.2外部函数
9.7局部变量和全局变量
9.7.1局部变量
9.7.2全局变量
9.8函数应用
9.9难点解答
9.9.1怎样区分声明和定义
9.9.2为什么每个程序都有main函数?为什么不用声明就可以使用?
9.10小结
9.11动手纠错
第10章指针
10.1指针相关概念
10.1.1地址与指针
10.1.2变量与指针
10.1.3指针变量
10.1.4指针自增自减运算
10.2数组与指针
10.2.1一维数组与指针
10.2.2二维数组与指针
10.2.3字符串与指针
10.2.4字符串数组
10.3指向指针的指针
10.4指针变量作函数参数
10.5返回指针值的函数
10.6指针数组作main函数的参数
10.7难点解答
10.7.1为什么使用指针,指针的优点
10.7.2指针的初始化问题
10.8小结
10.9动手纠错
第3篇高级应用
第11章结构体与链表
11.1结构体
11.1.1结构体类型的概念
11.1.2结构体变量的定义
11.1.3结构体变量的引用
11.1.4结构体类型的初始化
11.2结构体数组
11.2.1定义结构体数组
11.2.2初始化结构体数组
11.3结构体指针
11.3.1指向结构体变量的指针
11.3.2指向结构体数组的指针
11.3.3结构体作为函数参数
11.4包含结构的结构
11.5链表
11.5.1链表概述
11.5.2创建动态链表
11.5.3输出链表
11.6链表相关操作
11.6.1链表的插入操作
11.6.2链表的删除操作
11.7难点解答
11.7.1结构体怎样赋值
11.7.2链表与数组
11.8小结
11.9动手纠错
第12章共用体与枚举类型
12.1共用体
12.1.1共用体的概念
12.1.2共用体变量的引用
12.1.3共用体变量的初始化
12.1.4共用体类型的数据特点
12.2枚举类型
12.3难点解答
12.3.1共用体和结构体的区别
12.3.2枚举类型什么时候使用?
12.4小结
12.5动手纠错
第13章位运算
13.1位与字节
13.2位运算操作符
13.2.1“与”运算符
13.2.2“或”运算符
13.2.3“取反”运算符
13.2.4“异或”运算符
13.2.5“左移”运算符
13.2.6“右移”运算符
13.3循环移位
13.4位段
13.4.1位段的概念与定义
13.4.2位段相关说明
13.5难点解答
13.5.1&与&&有什么不同?
13.5.2|与||的区别
13.6小结.
13.7动手纠错
第14章预处理
14.1宏定义
14.1.1不带参数的宏定义
14.1.2带参数的宏定义
14.2#include指令
14.3条件编译
14.3.1#if命令
14.3.2#ifdef及#ifndef命令
14.3.3#undef命令
14.3.4#line命令
14.3.5#pragma命令
14.4小结
14.5动手纠错
第15章文件
15.1文件概述
15.2文件基本操作
15.2.1文件指针
15.2.2文件的打开
15.2.3文件的关闭
15.3文件的读写
15.3.1fputc()函数
15.3.2fgetc()函数
15.3.3fputs()函数
15.3.4fgets()函数
15.3.5fprintf()函数
15.3.6fscanf()函数
15.3.7fread()和fwrite()函数
15.4文件的定位
15.4.1fseek()函数
15.4.2rewind()函数
15.4.3ftell()函数
15.5难点解答
15.5.1怎样运行本章程序
15.5.2为什么程序后都有fclose()函数
15.6小结
15.7动手纠错
第16章存储管理
16.1内存组织方式
16.1.1内存的组织方式
16.1.2堆与栈
16.2动态管理
16.2.1malloc()函数
16.2.2calloc()函数
16.2.3realloc()函数
16.2.4free()函数
16.3内存丢失
16.4难点解答
16.4.1malloc()函数分配内存为什么常写(int*)?
16.4.2malloc()、calloc()、realloc()函数的区别?
16.5小结
16.6动手纠错
第17章网络套接字编程
17.1计算机网络基础
17.1.1IP地址
17.1.2OSI七层参考模型
17.1.3地址解析
17.1.4域名系统
17.1.5TCP/IP协议
17.1.6端口
17.1.7套接字的引入
17.1.8网络字节顺序
17.2套接字概述
17.2.1套接字概述
17.2.2TCP的套接字的socket编程
17.2.3UDP的套接字的socket编程
17.3套接字函数
17.3.1套接字函数介绍
17.3.2基于TCP的网络聊天程序
17.4难点解答
17.4.1TCP与UDP的比较
17.4.2如何实现网络通信
17.5小结
17.6动手纠错
第4篇项目实战
第18章学生成绩管理系统
18.1需求分析
18.2系统设计
18.3功能设计
18.3.1功能选择界面
18.3.2录入学生成绩信息
18.3.3查询学生成绩信息
18.3.4删除学生成绩信息
18.3.5修改学生成绩信息
18.3.6插入学生成绩信息
18.3.7统计学生人数
18.4小结