沈涵飞c语言程序设计APP,C语言程序设计

图书简介

本书图文并茂,示例丰富,对C语言的基础知识进行了彻底剖析,内容涉及输入输出、流程控制、数组、函数、指针、文件操作等。对难以理解的概念,均精心绘制示意图,进行清晰、通俗地讲解。本书首次将在线评测系统引入C语言教学,建立了适合初学者的阶梯式题库(http://oj.csoeasy.com/),让学生在评测过程中取得成就感,培养程序设计的兴趣。本书配有丰富的数字资源,包括课程网站(http://www.csoeasy.com/)、PPT、网易云课堂的视频课程等。其中视频课程上线后,目前选课人数已超过2万人。本书可作为应用型、技能型人才培养的计算机专业及相关专业的教学用书,也可作为C语言程序设计初学者的入门教材、C语言程序设计人员的培训教材或参考用书。

章节目录

目录

前言1

第1章 初识C语言2

1.1 计算机和程序设计语言2

1.1.1 计算机的发展和程序设计语言的产生2

1.1.2 机器语言、汇编语言和高级语言3

1.1.3 程序设计的开发效率和运行效率3

1.1.4 最常见的程序设计语言及其用途4

1.1.5 学习程序设计从C语言开始5

1.2 C语言的发展和特点6

1.2.1 C语言的发展6

1.2.2 C语言的特点7

1.3 C语言程序的初步探索8

1.3.1 第1个程序:Hello, World!8

1.3.2 C/C++集成开发环境C-Free的安装9

1.4 算术表达式的计算11

1.5 如何学好程序设计:模仿、理解和运用12

习题13

第2章 数据类型、运算和输入输出14

2.1 标识符和关键字14

2.2 常量和变量14

2.2.1 普通常量和符号常量14

2.2.2 变量的定义和初始化15

2.2.3 赋值类运算符15

2.3 常用的基本数据类型的及其特点16

2.3.1 常用的数据类型17

2.3.2 整数类型能精确表示限定范围内的所有整数18

2.3.3 浮点数类型只能近似的表示数据19

2.4 C程序基本结构:DICO 和 A+B问题19

2.5 程序设计在线评测系统20

2.6 基本算术运算(取整和取余)21

2.7 格式化输入:三位数反转22

2.8 浮点数:计算圆的周长和面积22

2.9 字符类型24

2.10 强大、经典的 scanf 和 printf25

2.11 在命令行编译和运行程序28

2.12 文件、I/O重定向和管道*29

2.12.1 一切都是文件29

2.12.2 管道机制30

习题31

第3章 分支结构32

3.1 if-else 语句的三种基本形式32

3.1.1 基本结构1:单分支结构32

3.1.2 基本结构2:双分支结构33

3.1.3 双分支结构和三元运算符34

3.1.4 基本结构3:多分支结构34

3.2 语法错误和逻辑错误36

3.3 运算符、表达式和优先级37

3.3.1 关系运算符与关系表达式37

3.3.2 逻辑运算符和逻辑表达式38

3.3.3 自增自减运算符40

3.4 逻辑运算符的短路特性40

3.5 多路分支语句switch-case-break42

3.5.1 switch-case-break的基本用法42

3.5.2 多个case语句相同情况的处理44

3.6 代码格式化:让代码清晰易读46

3.7 C语言的if~else匹配问题 *47

习题47

第4章 循环结构49

4.1 最简单的循环:简单重复49

4.1.1 代码的优化50

4.1.2 左闭右开50

4.2 循环表示序列:计算1~100的和51

4.2.1 累积运算:求1~100的和51

4.2.2 计算1~100的PHP、JAVA、Swift和Python版本53

4.2.3 罗塞塔石碑语言学习法54

4.3 从特定的数扩展到序列:水仙花数54

4.4 三种基本循环结构及运行流程56

4.5 流程图和while循环:3n+1 问题58

4.6 do-while循环:迭代法求平方根59

4.7 二重循环:九九乘法表60

4.8 多重循环:水仙花数61

4.9 改变循环执行流程:break 和 continue62

4.10 while典型结构:读取比较二合一 *63

习题65

第5章 算法和程序设计66

5.1 程序=算法+数据结构66

5.2 算法的五大特点67

5.3 算法的表示67

5.3.1 流程图68

5.3.2 N-S流程图68

5.4 程序设计方法69

5.4.1 程序设计的一般步骤69

5.4.2 结构化程序设计方法70

5.5 C++中的标准模板库(STL)*70

习题72

第6章 批量数据的处理——数组73

6.1 初识数组:从一组数中找出最大值73

6.2 数组进阶:选择排序法75

6.3 动态申请数组 *77

6.4 二维数组:计算方阵对角线元素之和78

6.5 模拟:奇数阶魔方(从伪代码到C语言)*80

6.6 数组应用举例:统计各类字符的个数82

习题83

第7章 函数84

7.1 函数的基本知识84

7.2 函数的调用过程86

7.3 编写自定义函数——分段函数87

7.4 函数的四种类型89

7.5 数组作为函数参数:寻找数组中的最大值89

7.6 递归函数:计算阶乘和斐波那契数列90

7.7 计算程序运行时间:递归和递推的效率比较*92

7.8 经典递归问题:汉诺塔*93

7.9 编译流程:预处理、编译、汇编、链接95

7.10 全局变量、静态变量:优化斐波那契数列的递归版本97

习题99

第8章 特殊的字符数组——字符串100

8.1 字符串的声明、输入和输出100

8.2 字符串的简单应用:判断回文101

8.3 字符数组的空间和字符串的长度103

8.4 常用字符串处理函数103

8.5 字符串不是一等公民105

8.6 使用memset函数初始化数组*108

习题109

第9章 指针——地址的别名110

9.1 初识指针110

9.2 数组和指针112

9.3 函数的传值调用和传地址调用115

9.3.1 传值调用115

9.3.2 传地址调用116

9.4 字符串指针和字符数组:只读和可写118

9.5 指针数组和命令行参数*119

9.6 指向函数的指针:快速排序函数的应用*121

习题122

第10章 结构体124

10.1 初识结构体:重写两点之间的距离124

10.2 结构体的初始化和三种访问方式126

10.3 数据类型的空间分配127

10.4 初识链表(自引用结构)128

习题130

第11章 文件处理132

11.1 文件与流132

11.1.1 文件基础知识132

11.1.2 文件和流132

11.1.3 文本文件和二进制文件133

11.1.4 文件缓冲系统134

11.2 文件的打开和关闭方法134

11.3 文件的读写136

11.3.1 字符的读写:显示文件的内容和复制文件136

11.3.2 数据块的读写:复制文件137

11.3.3 逐行处理:搜索模式串138

11.3.4 文件的格式化输入:处理CSV文件*140

11.4 文件的定位与随机读写141

习题143

附录A 常用字符与ASCII码对照表145

附录B 运算符的优先级和结合性146

附录C 常用库函数147

数学函数147

字符函数148

字符串函数149

输入输出函数150

动态存储分配函数153

其他函数153

格式化输入函数的典型应用155

图书评论

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值