谭浩强c语言入门prd,完整C语言谭浩强学习笔记.docx

天不造人上人

天不造人上人,亦不造人下人福泽谕吉

PAGE

PAGE #

C语言谭浩强版笔记

第一章程序设计和c语言

1、 计算机能直接识别和接受的二进制代码称为机器指令,机器指令

的集合就是该计算机的 机器语言。

2、语言的发展历史:①机器语言②符号语言③高级语言

3、高级语言的发展:①非结构化语言②结构化语言③面向对象的语

4、C语言的祖先是BCPL语言

5、在字符串中的//和/*都不作为注释的开始。而是作为字符串的一 部分。

【但是在VC++6.0中//显示编译错误】

6、不要以为在max函数中求出最大值z后就会自动地作为函数值返 回调用处,必须用return语句指定将哪个值作为函数值。也不要不 加分析地在所有函数后面都写上return 0

7、一个程序由一个或多个源程序文件组成

8全局声明:即在函数之外进行的数据声明,在函数外面声明的变 量称为全局变量。例如把int a,b,sum;放到main函数的前面

9、函数是C程序的主要组成部分,编写 C程序的工作主要就是编写 一个个函数

10、 一个C语言程序是由一个或多个函数组成的,其中必须有且只有

一个main函数

11、 一个小程序只包含一个源程序文件,在一个源程序文件中包含若 干个函数(其中一个为main函数),若程序规模太大,可以使一个程 序包含若干个源程序文件,每个源程序文件又包含若干个函数【一个 源程序文件就是一个程序模块,一个程序分成若干个程序模块】

12、 在进行编译时是以源程序文件为对象进行的 【分别对各源程序文 件进行编译得到相应的目标程序,然后再将这些目标程序连接成为一 个统一的二进制可执行程序】

13、C语言的这种特点使得容易实现程序的模块化

14、一个函数名后面必须跟一对圆括号, 括号内写函数的参数名及其 类型。如果函数没有参数,可以写void或空括号【如int main (void) 或 int main()]

15、void dump(){}它是一个空函数,但是是合法的

16、程序总是从mian函数开始执行的,不管位置在哪儿

17、 程序中对计算机的操作是由函数中的C语句完成的

18、二进制目标程序在visual C++中的后缀为.obj

19、可执行程序在visual C++中的后缀为.exe

20、一个源程序经过编译后得到的目标程序要经过连接阶段与函数库

进行连接才能生成可执行文件

21、程序设计的任务:①问题分析②设计算法③编写程序④对源程序

进行编辑、编译和连接⑤运行程序,分析结果⑥编写程序文档

第二章算法

1、对数据的描述:在程序中要指定用到哪些数据类型以及这些数据

类型和数据的组织形式,这就是数据结构。

2、对操作的描述:即要求计算机进行操作的步骤,也就是 算法。

3、算法+数据结构二程序

4、算法是灵魂,数据结构是加工对象,语言是工具,编程需要采用

合适的方法。

5、算法的概念:为解决一个问题而采取的方法和步骤。

6、计算机算法可分为两大类:数值运算算法和非数值运算算法【数 值运算用于求数值解,非数值运算用于事务管理领域】

7、算法的特性:①有穷性②确定性③有零个或多个输入④有一个或

多个输出⑤有效性

8怎样表示一个算法:自然语言、传统流程图、结构化流程图、伪代

码等

9、连接点就是将画在不同地方的流程图连起来,流程图别忘记画箭

头。

基本结构的特点:①只有一个入口②只有一个出口③结构内的每一部

分都有机会被执行到④结构内不存在死循环

10、区分当型和直到型:前者先判断条件成不成立,再执行下一步, 后者先执行,再判断条件

11、用N-S图表示的算法都是结构化的算法,如果一个算法不能分解 为若干个基本结构,则它必然不是一个结构化的算法【 N-S图又称盒 图】

12、结构化设计方法的基本思路:把一个复杂问题的求解过程分阶段

进行,每个阶段处理的问题都控制在人们容易理解和处理的范围内。

13、方法:①自顶向下②逐步细化③模块化设计④结构化编码

14、程序中的子模块一般不超过 50行

15、模块的独立性:使用一个模块完成一项功能,耦合性越少越好

16、结构化程序设计方法用来解决人脑思维能力的局限性和被处理问 题的复杂性之间的矛盾

第三章 最简单的C程序设计

1、vc++把所有实数都作为双精度数处理。因此提醒用户:把双精度 常量赋给float型变量会造成精度损失,知道怎么回事就行了

2、数据有两种表现形式:常量和变量

3、常量分为:①整型常量(1000)

实型常量(十进制小数形式和指数形式 【12.34E3, E后面必须是整 数】)

字符常量(普通字符、转义字符)

字符串常量

符号常量(#define PI 3.1416)

4、基本字符集中的每个字符必须用一

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1 C语言概述 2 1.1 C语言的发展过程 2 1.2 当代最优秀的程序设计语言 2 1.3 C语言版本 2 1.4 C语言的特点 3 1.5 面向对象的程序设计语言 3 1.6 C和C++ 3 1.7 简单的C程序介绍 4 1.8 输入和输出函数 5 1.9 C源程序的结构特点 6 1.10 书写程序时应遵循的规则 6 1.11 C语言的字符集 6 1.12 C语言词汇 7 1.13 Turbo C 2.0集成开发环境的使用 8 1.13.1 Turbo C 2.0简介和启动 8 1.13.2 Turbo C 2.0集成开发环境 8 1.13.3 File菜单 9 1.13.4 Edit菜单 10 1.13.5 Run菜单 11 1.13.6 Compile菜单 12 1.13.7 Project菜单 13 1.13.8 Options菜单 14 1.13.9 Debug菜单 18 1.13.10 Break/watch菜单 19 1.13.11 Turbo C 2.0的配置文件 20 2 程序的灵魂—算法 1 2.1 算法的概念 1 2.2 简单算法举例 1 2.3 算法的特性 4 2.4 怎样表示一个算法 4 2.4.1 用自然语言表示算法 4 2.4.2 用流程图表示算法 4 2.4.3 三种基本结构和改进的流程图 8 2.4.4 用N-S流程图表示算法 9 2.4.5 用伪代码表示算法 10 2.4.6 用计算机语言表示算法 11 2.5 结构化程序设计方法 11 3 数据类型、运算符与表达式 1 3.1 C语言的数据类型 1 3.2 常量与变量 3 3.2.1 常量和符号常量 3 3.2.2 变量 3 3.3 整型数据 4 3.3.1 整型常量的表示方法 4 3.3.2 整型变量 5 3.4 实型数据 7 3.4.1 实型常量的表示方法 7 3.4.2 实型变量 8 3.4.3 实型常数的类型 9 3.5 字符型数据 9 3.5.1 字符常量 9 3.5.2 转义字符 9 3.5.3 字符变量 10 3.5.4 字符数据在内存中的存储形式及使用方法 10 3.5.5 字符串常量 11 3.5.6 符号常量 12 3.6 变量赋初值 12 3.7 各类数值型数据之间的混合运算 13 3.8 算术运算符和算术表达式 14 3.8.1 C运算符简介 14 3.8.2 算术运算符和算术表达式 15 3.9 赋值运算符和赋值表达式 17 3.10 逗号运算符和逗号表达式 18 3.11 小结 19 3.11.1 C的数据类型 19 3.11.2 基本类型的分类及特点 19 3.11.3 常量后缀 19 3.11.4 常量类型 19 3.11.5 数据类型转换 19 3.11.6 运算符优先级和结合性 20 3.11.7 表达式 20 4 最简单的C程序设计—顺序程序设计 1 4.1 C语句概述 1 4.2 赋值语句 3 4.3 数据输入输出的概念及在C语言中的实现 4 4.4 字符数据的输入输出 4 4.4.1 putchar 函数(字符输出函数) 4 4.4.2 getchar函数(键盘输入函数) 5 4.5 格式输入与输出 5 4.5.1 printf函数(格式输出函数) 5 4.5.2 scanf函数(格式输入函数) 8 4.6 顺序结构程序设计举例 12 5 分支结构程序 1 5.1 关系运算符和表达式 1 5.1.1 关系运算符及其优先次序 1 5.1.2 关系表达式 1 5.2 逻辑运算符和表达式 2 5.2.1 逻辑运算符极其优先次序 2 5.2.2 逻辑运算的值 3 5.2.3 逻辑表达式 3 5.3 if语句 4 5.3.1 if语句的三种形式 4 5.3.2 if语句的嵌套 7 5.3.3 条件运算符和条件表达式 9 5.4 switch语句 10 5.5 程序举例 11 6 循环控制 1 6.1 概述 1 6.2 goto语句以及用goto语句构成循环 1 6.3 while语句 2 6.4 do-while语句 4 6.5 for语句 6 6.6 循环的嵌套 9 6.7 几种循环的比较 9 6.8 break和continue语句 9 6.8.1 break语句 9 6.8.2 continue 语句 10 6.9 程序举例 11 7 数组 1 7.1 一维数组的定义和引用 1 7.1.1 一维数组的定义方式 1 7.1.2 一维数组元素的引用 2 7.1.3 一维数组的初始化 4 7.1.4 一维数组程序举例 4 7.2 二维数组的定义和引用 6 7.2.1 二维数组的定义 6 7.2.2 二维数组元素的引用 6 7.2.3 二维数组的初始化 7 7.2.4 二维数组程序举例 9 7.3 字符数组 9 7.3.1 字符数组的定义 9 7.3.2 字符数组的初始化 9 7.3.3 字符数组的引用 10 7.3.4 字符串和字符串结束标志 10 7.3.5 字符数组的输入输出 10 7.3.6 字符串处理函数 12 7.4 程序举例 14 7.5 本章小结 17 8 函 数 1 8.1 概述 1 8.2 函数定义的一般形式 3 8.3 函数的参数和函数的值 4 8.3.1 形式参数和实际参数 4 8.3.2 函数的返回值 5 8.4 函数的调用 6 8.4.1 函数调用的一般形式 6 8.4.2 函数调用的方式 6 8.4.3 被调用函数的声明和函数原型 7 8.5 函数的嵌套调用 8 8.6 函数的递归调用 10 8.7 数组作为函数参数 12 8.8 局部变量和全局变量 17 8.8.1 局部变量 17 8.8.2 全局变量 19 8.9 变量的存储类别 20 8.9.1 动态存储方式与静态动态存储方式 20 8.9.2 auto变量 21 8.9.3 用static声明局部变量 21 8.9.4 register变量 22 8.9.5 用extern声明外部变量 23
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值