发表于2024-11-27
内容全面,由浅入深:本书涵盖了C语言课程中的所有知识点,从零基础语法开始讲解,从易到难,内容翔实,即适合没有任何C语言基础的初学者,又适用于一定基础但想精通C语言的人员。
视频教学,快速提高:本书配有同步教学视频录像,与书中内容紧密结合并相互补充,让读者更加直观体验实际应用环境,快速掌握编程技巧。
实例讲解,易于上手:本书全面打破传统教材按部就班讲解知识点的模式,重难知识点均配有典型例题,并给出实例的完整代码、运行结果及对实例深入分析,使读者可以轻松理解,易于上手。
结构精巧,贴心提示:本书每章章前均设有“章前导读”,读者在开始本章知识学习之前,可大致了解本章知识结构。另外,在各章节使用了很多“说明”、“注意”等小栏目,帮助读者更加清楚地理解基本概念,掌握应用技巧。
应用实践,学以致用:本书每章结束提供的“实战练习”是根据每章知识点精心设计的,读者可以自我实践,检查知识掌握情况,举一反三,学以致用。
《C语言从入门到精通》从初学者的角度出发,以通俗易懂的语言,丰富多彩的实例,详细介绍了使用C语言进行程序开发应该掌握的各方面知识。全书共分17章,包括概述、C语言程序的组成、C语言的基本构成元素和数据类型、运算符和表达式、用户与计算机交互——输入/输出、分支结构程序设计、循环结构与转移语句、数组、函数、指针、结构体和共用体、位操作、编译与预处理、文件、内存管理、网络编程以及通信录管理系统。
本书适合任何想学习C语言的读者,无论您是否从事计算机相关行业,是否接触过C语言,均可通过学习快速掌握C语言的开发方法和技巧。
未来教育教学与研究中心,是一家专门从事计算机教育类产品研发的机构,作者团队中不仅拥有丰富教学经验的高校教师,还有具有实战经验的一线研发人员。多年来,本中心一直致力于图书质量和品牌的建设,努力打造精品图书,努力建设一流团队,全面提升综合竞争力,为广大读者提供高质量的教育教学产品。
第1章概述
1.1C语言的起源
1.1.1程序语言的简述
1.1.2C语言的发展史
1.2C语言的特点
1.3C语言的第一个例子
——Hello C's World
1.4认识常用开发环境
1.4.1C语言程序编写与
运行流程
1.4.2C语言常用开发环境
1.4.3Visual C++ 6.0
1.5实战练习
第2章C语言程序的组成
2.1进一步认识C语言程序
2.2声明区
2.2.1头文件
2.2.2函数声明
2.2.3变量声明
2.3主函数
2.4函数定义区
2.5注释
2.6代码的规范
2.7实战练习
第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.1静态存储与动态存储
3.6.2auto变量
3.6.3static变量
3.6.4register变量
3.6.5extern变量
3.7综合运用
3.8实战练习
第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.10实战练习
第5章用户与计算机交互
——输入�N输出
5.1程序语句
5.2字符数据输入�N输出
5.2.1字符数据输出
5.2.2字符数据输入
5.3字符串输入�N输出
5.3.1字符串输出函数
5.3.2字符串输入函数
5.4格式输出函数——printf()
5.5格式输入函数——scanf()
5.6综合运用
5.7实战练习
第6章分支结构程序设计
6.1if语句
6.1.1单分支选择结构
——if语句
6.1.2双分支选择结构
——if…else语句
6.1.3多分支选择结构
——else if语句
6.1.4多分支选择结构
——if语句的嵌套形式
6.2条件运算符
6.3多重选择——switch语句
6.3.1switch语句的基本形式
6.3.2多路开关模式的
switch语句
6.4多分支语句的比较
6.5综合运用
6.6实战练习
第7章循环结构与转移语句
7.1循环结构
7.2当型循环语句
——while语句
7.3直到型循环语句
——do-while语句
7.4for语句
7.4.1for语句的使用
7.4.2for语句的变体
7.4.3for语句中的逗号应用
7.5循环语句的比较
7.6循环的嵌套
7.7转移语句
7.7.1goto语句
7.7.2break语句
7.7.3continue语句
7.8综合运用
7.9实战练习
第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.4字符数组
8.4.1字符数组的定义和引用
8.4.2字符数组的初始化
8.4.3字符数组的结束标志
——'\0'
8.4.4字符数组的输入和输出
8.4.5字符数组的应用举例
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实战练习
第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.8C语言库函数
9.9实战练习
第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实战练习
第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.7.3共用体变量的初始化
11.7.4共用体类型的
数据特点
11.8枚举类型
11.9实战练习
第12章位操作
12.1位与字节
12.2位运算操作符
12.2.1“与”运算符
12.2.2“或”运算符
12.2.3“取反”运算符
12.2.4“异或”运算符
12.2.5“左移”运算符
12.2.6“右移”运算符
12.3循环移位
12.4位段
12.4.1位段的概念与定义
12.4.2位段相关说明
12.5实战练习
第13章编译与预处理
13.1宏定义
13.1.1不带参数的宏定义
13.1.2带参数的宏定义
13.2#include指令
13.3条件编译
13.3.1#if命令
13.3.2#ifdef及#ifndef命令
13.3.3#undef命令
13.3.4#line命令
13.3.5#pragma命令
13.4实战练习
第14章文件
14.1文件概述
14.2文件基本操作
14.2.1文件指针
14.2.2文件的打开
14.2.3文件的关闭
14.3文件的读和写
14.3.1fputc()函数
14.3.2fgetc()函数
14.3.3fputs()函数
14.3.4fgets()函数
14.3.5fprintf()函数
14.3.6fscanf()函数
14.3.7fread()函数和
fwrite()函数
14.4文件的定位
14.4.1fseek()函数
14.4.2rewind()函数
14.4.3ftell()函数
14.5实战练习
第15章内存管理
15.1内存组织形式
15.2内存管理函数
15.2.1malloc()函数
15.2.2calloc()函数
15.2.3realloc()函数
15.2.4free()函数
15.3内存丢失
15.4实战练习
第16章网络编程
16.1计算机网络基础
16.1.1OSI七层参考模型
16.1.2IP地址
16.1.3网络地址解析
16.1.4域名系统
16.1.5TCP/IP协议
16.1.6网络字节顺序
16.2套接字概述
16.2.1有关套接字的概念
16.2.2TCP的套接字的
socket编程
16.2.3UDP的套接字的
socket编程
16.3套接字函数
16.3.1套接字函数介绍
16.3.2基于TCP的网络聊天
程序
16.4实战练习
第17章通信录管理系统
17.1需求及功能分析
17.2功能实现
17.2.1系统运行界面
17.2.2添加新的联系人
17.2.3显示联系人信息
17.2.4删除联系人信息
17.2.5查找联系人信息
17.2.6修改联系人信息
17.3本章小结
附录
1.1.1程序语言的简述
程序是指可以被计算机连续执行的指令语句的集合。通常为了解决一个实际问题,人们预先将处理问题的步骤、方法等一系列的过程编写成程序,然后输入计算机,计算机只需要执行程序中的指令。所以,程序设计是用计算机解决一个实际应用问题的整个处理过程。
按照计算机语言的发展史来划分,计算机语言可以分为三个发展阶段:机器语言、汇编语言和高级语言。
1.机器语言
机器语言是低级语言,是用二进制代码表示的计算机能直接识别和执行的一种机器指令集合,每一条指令都是由0、1构成。机器语言的优点是计算机可以直接识别,不需要进行任何翻译,执行效率高;缺点是程序员需要熟记全部指令代码和代码含义,非常繁琐和困难。
2.汇编语言
汇编语言是在机器语言的基础上发展而来的,是面向机器设计的程序语言,属于符号�N标记语言。汇编语言相较于机器语言,便于阅读和理解,但是增加了稍许翻译的代价。
3.高级语言
由于汇编语言依赖于硬件体系,并且该语言中的助记符号数量较多,所以运用起来不够方便。为了使程序语言更贴近人类的自然语言,同时又不依赖于计算机硬件,便产生了高级语言。目前传统的高级语言有:Fortran、ALGOL、Basic、Pascal、C、C++、Java等。
1.1.2C语言的发展史
作为一种程序设计语言,C语言既具有汇编语言的特点,又具有高级语言的特点,可以作为系统设计语言来编写与硬件系统相关的应用程序,也可以作为应用程序设计语言来编写不依赖计算机硬件的应用程序,应用非常广泛。C语言的发展历程如图1.1所示。
A语言
CPL语言
BCPL语言
B语言
C语言
图1.1C语言的发展历程
1.A语言
C语言的发展非常有趣,它的原型是ALGOL 60语言,也称为A语言。ALGOL 60是一种面向问题的高级语言,不适合编写系统程序,其特点是具有局部性、动态性、递归性和严谨性。ALGOL 60是程序设计语言发展史上的一个里程碑,它标志着程序设计语言成为一门独立的科学学科。
2. CPL语言(Combined Programming Language)
1963年,剑桥大学将A语言发展成为CPL语言,CPL语言在ALGOL 60的基础上与硬件接近了一些,但规模仍然比较宏大,难以实现。
3.BCPL语言(Basic Combined Programming Language)
1967年,剑桥大学马丁·理查斯(Martin Richards)对CPL进行了简化,推出了BCPL语言。BCPL是一种结构化程序设计语言,它能够直接处理与机器本身数据类型相近的数据,具有与内存地址对应的指针。
4.B语言
在20世纪70年代初期,时任美国贝尔实验室的肯·汤普逊对BCPL进行了修改,设计出了B语言。B语言类似早期版本的C语言,它只有一种数据类型——计算机字,大部分操作都将其作为整数对待,还包括许多库函数,其作用类似于C语言中的标准输入�N输出函数库。
5.C语言
B语言过于简单,功能有限,美国贝尔实验室的丹尼斯·里奇在B语言的基础上设计了一种新语言——C语言。1972年,丹尼斯·里奇完成了C语言的设计,并成功使用C语言编写了操作系统,降低了作业系统的修改难度。
1983年,美国国家标准学会(ANSI)对C语言进行了标准化,当年颁布了第一个C语言标准草案(83 ANSI C);1987年又颁布了另一个C语言标准草案(87 ANSI C);1994年,国际标准化组织ISO修订了C语言的标准;1999年又颁布了C语言标准草案,并在2000年3月被ANSI采用,即C99,正式名称为ISO�NIEC9899:1999;2011年12月8日,ISO和国际电工委员会IEC再次颁布了C语言的新标准,简称C11标准,是目前为止C语言的最新标准。
1.2C语言的特点
C语言是一种通用的程序设计语言,主要有以下特点。
1.高效性
从C语言的发展历程可以看到,它继承了低级语言的优点,能产生非常高效的代码。一般情况下,C语言生成目标代码的执行效率只比汇编程序低10%~20%。
2.可读性
C语言本身属于高级语言,具有友好的编写性 零起点快速入门:C语言从入门到精通 基础进阶学习(随书网址赠素材学习资料) 下载 mobi epub pdf txt 电子书 格式
零起点快速入门:C语言从入门到精通 基础进阶学习(随书网址赠素材学习资料) 下载 mobi pdf epub txt 电子书 格式 2024
零起点快速入门:C语言从入门到精通 基础进阶学习(随书网址赠素材学习资料) 下载 mobi epub pdf 电子书一般京东的东西都很放心的 但是这次包装比较差 外面就一个胶袋 收到时候 书的表面有点磨破 对于完美主义者来说 真忍受不了 希望京东能改进下
评分好。。。。。。。。。。。
评分看着还可以吧
评分很好的一本书,很适合初学者学习
评分(づ ●─● )づ(??益?)??(∗?????∗)??(?_?)(?•ˇ?ˇ•?)(?´?`?)*??*
评分.你要和我说话?你真的要和我说话?你确定自己想说吗?你一定非说不可吗?那你说吧,这是自动回复。
评分很不错,准备好好学习一下,讲解比较基础
评分继续看书中,哈哈哈哈
评分如果说,一个程序猿不会C语言,会不会被嘲笑??有这更,不开心
零起点快速入门:C语言从入门到精通 基础进阶学习(随书网址赠素材学习资料) mobi epub pdf txt 电子书 格式下载 2024