重点快看 C语言总复习总结资料(上)

  1. 第一章                  C语言概述

1.1 重点内容提要

1.1.1 C程序的组成

1.C程序组成

C程序是由函数构成的,一个C源程序至少有一个函数,即main函数,也可以由一个main函数和若干个其他函数构成。

2.C程序中函数之间的关系

构成C程序的函数有两大类:一类是主函数,另一类是子函数。在主函数和子函数之间,主函数可以调用子函数,而子函数不能调用主函数;在子函数之间可以彼此调用,没有层次之分。

1.1.2 函数的组成

1. 函数的首部

函数首部包括函数名、函数类型、函数属性、函数参数(形参)名、参数类型。

2.函数体

函数体,即函数首部下面的大括号{……}内的部分。它由两部分组成:

(1)声明部分:在声明部分中定义函数所用到的变量,以及对该函数所需要调用的函数进行声明。

(2)执行部分:执行部分由若干语句组成。C程序允许无执行部分,即是一个空函数,表明它什么也不做。

1.1.3 几点说明

(1)一个C程序,无论main函数在程序中的什么位置,程序的执行都将从main函数开始,在main函数中结束。

(2)程序书写格式自由,一行内可写几个语句,一条语句也可以分写在多行上。

(3)每个语句和数据定义的最后必须有一个分号。分号是C语言的必要组成部分。

(4)C语言本身没有输入输出语句,输入输出操作是由库函数scanf和printf等来完成的。

(5)可以用/*……*/对C程序中的任何部分进行注释,在执行程序时,系统不会执行注释部分。

1.2  考点

(1)C程序组成

(2)正确识别C语言的标识符。

  1. 第二章                   程序的灵魂—算法

2.1 重点内容提要

2.1.1.算法的概念

1.算法

算法即是一套操作方案,是为解决一个问题而采取的方法和步骤。

2.算法分类

算法可分为数值运算算法和非数值运算算法两大类。

数值运算算法:目的是求数值解。

非数值运算算法:包括面十分广泛,主要用于事物管理领域。

2.1.2 算法的特性

1.有穷性

有穷性是指一个算法应包含有限的操作步骤,而不能是无限的。

2.确定性

确定性是指算法中的每一个步骤都应当是确定的。

3.有零个或多个输入

一个算法可以没有输入,也可以有多个输入,所谓输入是从外界取得必要的信息。

4.有一个或多个输出

输出即一个算法所得的结果。

5.有效性

有效性是指算法中的每一个步骤都应当有效地执行,并得到确定的结果。

2.1.3. 算法的表示方法

1.自然语言表示算法用语言表示各种操作。

2.用流程图表示算法

用流程图表示算法:用一些图框表示各种操作。这种方法直观形象,易于理解。

3.三种基本结构

(1)顺序结构;(2)选择结构;(3)循环结构:a)当型循环结构;b)直到性循环结构。

4.用N—S流程图表示算法

5.用伪代码表示算法    

2.1.4 结构化程序设计方法

1.自顶向下、逐步细化的方法

2.模块化程序设计方法

3.结构化编码

2.2  考点

(1)了解结构化程序的三种基本结构,并在程序设计过程中正确应用三种基本结构。

(2)了解算法的表示方法。

3.1  重点内容提要

                                      第三章   数据类型. 运算符和表达式

3.1.1 C的数据类型

 数据类型分为基本类型,构造类型,指针类型,空类型。

基本类型 有: 字符型,整型,实型,枚举类型。

构造类型有:数组类型, 结构体类型,共同体类型

指针类型

空类型

3.1.2  常量与变量

1.常量

常量:在程序运行过程中其值不变的量。

  1. 整型常量——三种表示形式:a)十进制整数,例:12;b)八进制整数,例:012;c)十六进制整数,例:0x12。
  2. 字符型常量——包括两类:a)用单引号括起来的单个字符,例: ‘a’ , ‘2’;b)转义字符常量,例; ‘\n’ m’\r’ ,’\376’。
  3. 实型常量——两种表示形式:a)十进制小数形式,例:123.456;b)指数形式,例:1e3,2.3e-3。
  4. 字符串常量——用一对双引号括起来的字符序列。例: “abc”,“123”,“A” 。
  5. 符号常量——用一个标识符代表一个常量。其定义格式为:

                   #define 标识符 字符串

例:  #define PI 3.1415926

2. 变量

  1. 整型变量——分类: 有符号基本类型(int、内存中占2个字节)

无符号基本类型(unsigned int、内存中占2个字节)

有符号短整型(short int、内存中占2个字节)

无符号短整型(unsigned short、内存中占2个字节)

有符号长整型(long int、内存中占4个字节)

无符号长整型(unsigned long、内存中占4个字节)                    

  1. 实型变量——分类:单精度实型(float、内存中占4个字节)

 双精度实型(double、内存中占8个字节)

长双精度实型(long double、内存中占10个字节)

  1. 字符变量——char

3.1.3 变量赋初值

变量赋初值即在定义变量的同时对变量预先设置初值,即变量的初始化。

例: int a=3,b=3;

         char c=’a’;

3.1.4 各类数值数据间的混合运算

整型、实型和字符型数据间可以进行混合运算,在运算时,不同类型的数据要先转换成同一类型,然后进行运算。转换规则按下图所示箭头方向进行。

    高     double ← float

long

unsigned

底      int ← char, short

3.1.5  算术运算符和算术表达式

1. C语言运算符

  1. 算术运算符:+、-、*、/、%
  2. 关系运算符:>、<、==、>=、<=、!=
  3. 逻辑运算符:!、&&、||
  4. 位运算符:>>、<<、~、|、^、&
  5. 赋值运算符:=及其扩展赋值运算符
  6. 条件运算符:?:
  7. 逗号运算符:  ,
  8. 指针运算符:*、&
  9. 求字节数运算符:sizeof
  10. 强制类型转换运算符:(类型)
  11. 分量运算符: . 、->
  12. 下标运算符:  [ ]
  13. 其他: 如函数调用运算符( )

2.算术运算符和算术表达式

  1. 基本算术运算符:+、-、*、/、%
    1. 算术运算符的优先级为先乘除后加减。
    2. 算术运算符的结合方向:自左向右。
    3. 利用强制类型转换运算符可以将一个表达式转换成所需的类型,通常是从精度高的类型向精度低的类型转换,其优先级高于算术运算符。

一般格式: (类型名) 表达式

  1. 自增、自减运算符:++ (自增)、-- (自减)
    1. 一般格式:

++i,  --i  (在使用i之前先使i的值加(减)1)

i++,i--  (在使用i之后使i的值加(减)1)

    1. 自增、自减运算符的优先级高于算术运算符,与强制类型转换运算符同级。
    2. 自增、自减运算符的结合方向为自右向左。
    3. 自增、自减运算符只能用于变量,而不能用于常量或表达式。
  1. 算术运算符:用算术运算符和括号将运算对象连接起来的、符合C语法规则的式子。

3.1.6 赋值运算符和赋值表达式

1. 赋值运算符:=

  1. 优先级:低于算术运算符
  2. 结合方向:自右向左。

2.复合的赋值运算符:+=、-=、*=、/=、%=等

  1. 优先级:与赋值运算符“=”同级。
  2. 结合方向:自右向左。

3.赋值表达式

一般格式:<变量><赋值运算符><表达式>

4.赋值运算时的类型转换

如果赋值运算符两侧的类型不一致,在赋值时要进行类型转换,其规则如下:

转换说明

float

int

将整型数据转换成实型数据后再赋值

int

float

将实型数据的小数部分截去后再赋值

ling int

int,short int

值不变

int,short

long int

右侧的值不能超过左侧数据值的范围,否则将导致意外的结果

unsigned

signed

按原样赋值,但如果数据范围超过相应的整型范围,将导致意外的结果

signed

unsigned

3.1.7 逗号运算符和逗号表达式

1.逗号运算符: ,

  1. 优先级:是C语言运算符中优先级最低的运算符。
  2. 结合方向:自左向右。

2.逗号表达式:用逗号运算符将两个表达式连接起来的式子。

一般格式:   表达式1,表达式2,…,表达式n

运算结果:是整个逗号表达式最右边的表达式“表达式n”的值。

3.2 考点

  1. C语言中各种类型数据所占内存空间的规定。
  2. C语言中有关整型常量表示方法的规则。
  3. C语言中,逻辑“真”与逻辑“假”的表示方法。
  4. 字符常量可作为整型常量来处理。
  5. 自增、自减运算符的结合方向及其使用。
  6. 逗号运算符及逗号表达式的求值顺序和结果。
  7. 混合类型表达式的计算。
  1. 第四章            最简单的C程序设计——顺序程序设计

4.1 重点内容提要

4.1.1 C语言的语句

1. 控制语句:完成一定控制功能。

  1. if( ) ~ else ~         条件语句
  2. for( ) ~             循环语句
  3. while( ) ~           循环语句
  4. do ~ while( )        循环语句
  5. continue            结束本次循环语句
  6. break              终止执行switch或循环语句
  7. switch             多分支选择语句
  8. goto               转向语句
  9. return              从函数返回语句

2.函数调用语句:由一次函数调用加一个分号构成的一条语句。

3.表达式语句:由一个表达式构成的语句。例:a=3

4.空语句:只有一个分号的语句,表示什么都不做。

5.复合语句:用一对花括号“{}”把一些语句括起来所构成的语句。

4.1.2 赋值语句:由赋值表达式加上一个分号构成。

一般格式:  变量=表达式

4.1.3 数据的输入输出

1.字符输出函数putchar

一般格式: putchar(c),其中:c可以是字符变量,也可以是整型变量。

功能:向终端输出一个字符。

2.字符输入函数getchar

一般格式:getchar( )

功能:从终端(或系统隐含指定的输入设备)输入一个字符。

3.格式输出函数printf

一般格式:printf(格式控制,输出表列)

                  1.格式说明:由%和格式字符组成。其作用是将输出的数据转换为指定格式输出

格式控制  分为:

                  2.普通字符:原样输出的字符

输出表列:需要输出的一些数据。

功能:将输出表列中的参数按给定的格式输出。

常用的格式字符有:

(1)d格式符。用来输出十进制整数。

1)%d    按整型数据的实际长度输出。

2)%md  m为指定输出字段的宽度。M为正整数,左补空格。

3)%ld   输出长整型数据。

(2)o格式符。以八进制整数形式输出数据。

(3)x格式符。以十六进制整数形式输出数据。

(4)u格式符。以十进制整数形式输出无符号数据。

(5)c格式符。用以输出一个字符。

(6)s格式符。用以输出一个字符串。

1)%s    输出一个字符串。

2)%ms   输出字符串占m列,左补空格。

3)%-ms   输出字符串占m列,右补空格。

4)%m.ns将字符串左端n个字符以占m列输出,左补空格

5)%-m.ns将字符串左端n个字符以占m列输出,右补空格

(7)f格式符。用来输出实数。

1)%f     按系统默认格式输出,整数部分全部输出,小数保留6位。

2)%m.nf  指定输出的数据共占m列,小数占n列,左补空格

3)%-m.nf  指定输出的数据共占m列,小数占n列,右补空格

4.格式输入函数scanf

一般格式:scanf(格式控制, 地址表列)

             1. 格式说明:由%和格式字符组成。

格式控制  分为:

             2. 普通字符:原样输出的字符

地址表列:由若干个地址组成的表列,可以是变量的地址,或字符串的首地址。

功能:按指定格式形式输入数据。

第5章           逻辑运算和判断选取控制

5.1 重点内容提要

5.1.1 关系运算符和关系表达式

1.C语言提供的关系运算符

(1)关系运算符

1) <   (小于)

2)  <=  (小于等于)  优先级相同(高)

3)  >   (大于)

4)  >=  (大于等于)

5)  ==  (等于)      优先级相同(低)

6)  !=  (不等于)

(2)关系运算符的优先级

算术运算符    (高)

关系运算符

赋值运算符    (低)

(3)关系运算符的结合方向:自左向右。

2.关系表达式

(1)关系表达式:用关系运算符将两个表达式连接起来的式子。

(2)关系表达式的运算结果是一个逻辑值,即“真”(1)或“假”(0)。

5.1.2 逻辑运算符和逻辑表达式

1.C语言提供的逻辑运算符

(1)逻辑运算符:

1)!(逻辑非)

2)&&(逻辑与)

3)||(逻辑或)

(2)逻辑运算符的优先级:

    !

算术运算符    (高)

关系运算符

&&、||

赋值运算符    (低)

(3)逻辑运算符的结合方向:自左向右。

2.逻辑表达式

(1)逻辑表达式:用逻辑运算符将两个表达式连接起来的式子。

(2)逻辑表达式的运算结果是一个逻辑值,即“真”(1)或“假”(0)。

5.1.3  if语句

1.If语句的三种形式

(1)单分支:

.一般格式: if(表达式) 语句

.功能:先计算表达式的值,若值为非0,执行内嵌语句,若值为0,则执行if语句下面的第一条语句。

(2)双分支:

.一般格式: if(表达式) 语句1

            else 语句2

.功能:先计算表达式的值,若值为非0,执行内嵌语句1,若值为0,则执行内嵌语句2。

(3)多分支:

.一般格式: if(表达式1) 语句1

else if (表达式2) 语句2

else if (表达式3) 语句3

        ┇

else if (表达式m) 语句m

else 语句n

2.if语句的嵌套

if(表达式1)

if (表达式2) 语句1

else  语句2

else

if (表达式3) 语句3

else  语句4

5.1.4 条件运算符

1.条件运算符

(1)条件运算符:  ? :

(2)条件运算符的优先级:仅优于赋值运算符。

(3)条件运算符的结合方式:自右向左。

2.条件表达式

.一般格式: 表达式1?表达式2:表达式3

.执行顺序:先求解表达式1,若值为非0,求解表达式2,并将该值作为表达式的值;若值为0,则计算表达式3的值,并将该值作为表达式的值。

5.1.5  switch语句

.一般格式: switch (表达式)

{

case 常量表达式1:语句1

case常量表达式2: 语句2

             

case常量表达式n: 语句n

default: 语句n+1

}

.执行顺序:先求解表达式,当表达式的值与某个case后面的常量表达式的值相等时,就执行此case后面的语句,之后,流程控制转移到下一个case继续执行;若所有的case中的常量表达式的值都没有与表达式的值匹配的,就执行default后面的语句。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

何为路 脚下即路

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值