C++知识点整理版Word文档格式.docx

上传人:b****4 文档编号:6537144 上传时间:2023-05-06 格式:DOCX 页数:33 大小:37.46KB
下载 相关 举报
C++知识点整理版Word文档格式.docx_第1页
第1页 / 共33页
C++知识点整理版Word文档格式.docx_第2页
第2页 / 共33页
C++知识点整理版Word文档格式.docx_第3页
第3页 / 共33页
C++知识点整理版Word文档格式.docx_第4页
第4页 / 共33页
C++知识点整理版Word文档格式.docx_第5页
第5页 / 共33页
C++知识点整理版Word文档格式.docx_第6页
第6页 / 共33页
C++知识点整理版Word文档格式.docx_第7页
第7页 / 共33页
C++知识点整理版Word文档格式.docx_第8页
第8页 / 共33页
C++知识点整理版Word文档格式.docx_第9页
第9页 / 共33页
C++知识点整理版Word文档格式.docx_第10页
第10页 / 共33页
C++知识点整理版Word文档格式.docx_第11页
第11页 / 共33页
C++知识点整理版Word文档格式.docx_第12页
第12页 / 共33页
C++知识点整理版Word文档格式.docx_第13页
第13页 / 共33页
C++知识点整理版Word文档格式.docx_第14页
第14页 / 共33页
C++知识点整理版Word文档格式.docx_第15页
第15页 / 共33页
C++知识点整理版Word文档格式.docx_第16页
第16页 / 共33页
C++知识点整理版Word文档格式.docx_第17页
第17页 / 共33页
C++知识点整理版Word文档格式.docx_第18页
第18页 / 共33页
C++知识点整理版Word文档格式.docx_第19页
第19页 / 共33页
C++知识点整理版Word文档格式.docx_第20页
第20页 / 共33页
亲,该文档总共33页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

C++知识点整理版Word文档格式.docx

《C++知识点整理版Word文档格式.docx》由会员分享,可在线阅读,更多相关《C++知识点整理版Word文档格式.docx(33页珍藏版)》请在冰点文库上搜索。

C++知识点整理版Word文档格式.docx

的结果为 

-32768。

这称为整数运算的溢出,系统不检查这样的错误,程序员必须自己保证程序中不出现这样的错误。

(3.1.2)在某些应用中,不可能出现负数,则整型数中有一半的数值范围是被浪费的。

此在C/C++中可以将所有的数都看成正整数,称为无符号数。

无符号数的定义:

在各种整数类型前加上关键词unsigned,变成unsigned 

int, 

unsigned 

short, 

(3.2) 

实型:

以浮点表示,操作类似于整型,浮点数无法精确表示。

(3.2.1)浮点类型的分类:

单精度 

float;

双精度 

double

(3.3)字符型(char):

存放一个字母或符号,占一个字节,存放的是字符的内码。

可执行比较、连接等运算。

具有双重属性:

整数属性和字符属性,整数属性:

字符类型即单字节的整数类,字符属性:

数据值即为相应字符的 

Ascii 

码。

字符类型名:

char。

可分为可打印字符:

小写字母、大写字母、数字、标点符号、空格等;

非打印字符:

换行和报警字符或响铃 

等控制字符 

(3.4)布尔型(bool):

只有“真”、“假”两个值。

可执行判断运算。

bool 

flag=true;

(3.5)字符串(string):

是类类型,用双引号“”表示,可执行字符串比较,连接应用时要加 

#include 

<

string>

string 

str= 

“dfhdsf”;

三、如何声明常量

4.常量:

值的直接表示。

如1、3、1.57、“A‟等,又称直接量。

(4.1) 

整型常量可用十进制、八进制和十六进制表示:

如十进制:

123, 

-234;

八进制:

0123 

十六进制:

0x123, 

0x3a2f 

(4.2)浮点数常量有两种表示法:

(1)十进制表示:

1.23 

, 

3.14;

(2)科学计数法:

尾数e指数 

123e2=12300 

2.25e-3=0.00225 

注意:

尾数不能为空,指数必须为整数 

(4.3)字符常量:

”a‟, 

“S‟, 

”2‟等用一对单引号括起来的数据。

字符串常量用双引号 

(4.4)命名常量:

为值指定一个描述性的文字,增加程序的可读性。

在C++语言中,用const修饰,如 

const 

double 

PI 

=3.14;

见 

PI即知3.14。

注意一般变量名需大写,如PI。

二、算术运算符号及其运行规则

a)整数除整数

b)%求模运算

5.算术运算符:

+(加) 

-(减) 

*(乘) 

(求商) 

%(求余) 

(5.1)“-”可为二元运算符,也可为一元运算符,其余所有的算术运算符都是二元运算符。

(5.2)优先级:

高 

%, 

低 

-- 

(5.3)整型与整型数运算,结果为整型,如 

整型与浮点数运算,结果为浮点数,如5 

2.0 

2.5 

字符与整型数运算,结果为整型;

字符与浮点数运算,结果为浮点数。

浮点数与浮点数运算,结果为浮点数。

“%”运算符:

取余,其两边都必须是整型数。

6.关系运算符:

>

 

=, 

==, 

!

(6.1) 

优先级:

高于赋值运算符,低于算术运算符。

关系运算符内部:

==和 

=较低 

(6.2)关系表达式:

用关系运算符将二个表达式连接起来称为关系表达式。

关系表达式的结果是 

true 

false。

“等于”运算符是由两个等号组成。

常见的错误是在比较相等时用一个等号。

==(相等),=(赋值) 

7. 

逻辑运算符 

&

(and) 

|| 

(or) 

(not) 

(7.1)优先级:

高于 

关系运算符 

高于|| 

(7.2)逻辑表达式:

由逻辑运算符连接起来的表达式,其结果为“真(true)”或“假(false)” 

逻辑表达式在执行时,先处理左边。

如左边已能决定此逻辑表达式的结果,则右边不执行。

因此,在&

逻辑表达式中,应把false可能性较大的条件放在左边,在||表达式中,应把true可能性较大的条件放在左边,这样可以减少程序执行的时间 

8.赋值运算符:

的优先级比算术运算符低 

(8.1)赋值语句:

把一个值赋给一个变量。

如x 

z;

3.14;

赋值语句的左边是变量,右边是表达式。

(8.2)赋值表达式格式:

变量>

表达式>

2。

作用:

将右边的表达式的值存入左边的变量,整个表达式的值是右边的表达式的结果。

赋值运算符是右结合的 

(8.3)左值(lvalue):

在C++中,能出现在赋值运算符左边的表达式称为左值 

右值(rvalue):

赋值运算符右边的表达式的值 

(8.4)赋值语句:

赋值表达式后面加上分号。

(8.5)将赋值表达式作为更大的表达式的一部分 

(x 

6) 

(y 

7) 

等价于分别将x 

和 

的值设为6 

7,并将6和7相加,结果存于变量a 

(8.6)其他运算符与赋值运算符结合的运算符称为复合赋值运算符。

变量 

op= 

表达式;

等价于:

op 

常用的复合赋值运算符有:

+=,-=,*=,/=,%= 

balance 

+= 

deposit;

-= 

surcharge;

/= 

10;

salary 

*=2;

(8.7)赋值和运算时的自动类型转换,在进行赋值操作时,会发生类型转换,将取范围小的类型转为取值范围大的类型是安全的反之是不安全的,如果大类型的值在小类型能容纳的范围之内,则平安无事 

强制类型转换:

①(类型名)(表达式);

或类型名 

(表达式);

如z 

(double)x 

y;

②静态转换(static_cast):

用于编译器隐式执行的任何类型转换 

转换类型<

类型名>

(表达式) 

static_cast<

double>

(x) 

单个分号组成的语句成为空语句 

用{ 

}括起来的一组语句称为复合语句。

在逻辑上看成一个语句。

复合语句可以放在任何单语句出现的地方。

在复合语句中可以定义变量,但必须定义在最前面。

4. 

逗号表达式语句格式:

表达式1,表达式2,…,表达式n 

逗号运算符的优先级是所有运算符中最低的 

如a的初值为0,则表达式 

1, 

2, 

3, 

4, 

5的结果为 

15 

5. 

前置 

++i, 

---i 

(先执行i+1或i-1,再使用i值)

6.后置 

i++, 

i--- 

(先使用i值,再执行i+1或i-1) 

If语句

c)形式

d)三种If语句的执行流程

9. 

控制语句:

改变程序中语句的执行次序。

(9.1)if语句:

①两个分支:

条件测试为true时所执行的程序块叫做then子句,条件为false时执行的语句叫做else子句。

格式

( 

) 

if 

(条件测试) 

语句;

即else语句可省略 

(2) 

语句1;

else 

语句2;

eg. 

(grade 

60) 

cout 

“passed”;

 

“failed”;

(3)多分支语句:

条件1为true时所执行的程序块1,条件1为false但满足条件2时执行的语句块2,。

依次类推,条件n-1为false但满足条件n时执行else语句。

常见的有 

3分支语句:

if—else 

if-else。

90) 

“A”;

80) 

“B”;

70) 

“C”;

“D”;

”E”;

(9.2)条件语句使用注意 

①条件的结果值应该是 

false,它们是C++中bool类型的值 

②条件可为任意表达式,不一定是关系表达式。

为false,非 

为true。

③if 

语句可以没有else子句。

合理的缩排。

④if语句的then子句和else子句含有if语句,称为if语句的嵌套。

eg 

100) 

(x<

语句3;

} 

语句4;

⑤歧义性:

如最后一个else跟哪个if 

配对.。

0) 

if 

result 

cout<

“error 

:

== 

0”<

endl;

配对原则:

每个else子句是和在它之前最近的一个没有else子句的if语句配对。

⑥在每个if-else语句后加一对大括号{ 

}是一种良好习惯,特别是有两个以上的复合语句需要执行时。

(9.2)条件表达式:

更加简练的用来表达条件执行的机制 

运算符 

问号冒号运算符 

形式 

(条件) 

?

表达式1 

表达式2 

eg:

max 

循环语句

e)形式

f)三种循环语句的区别

g)三种循环语句的执行流程

10.循环语句:

一个完整的循环结构一般由四部分组成:

(10.1)For 

语句:

主要用于计数循环 

for(表达式1;

表达式2;

表达式3) 

or{语句快;

可以理解为:

for(循环变量赋初值;

循环条件;

循环变量增值) 

符合循环条件时的执行语句 

循环体可以是复合语句或空语句。

循环里所有语句的一次完全执行称为一个循环周期。

执行过程:

先执行表达式1,再执行判断表达式2,如果为true,执行一次循环体

(即一个循环周期),接着执行表达式3,然后重新执行判断表达式2,若为true,又执行一次循环体,重复直至判断表达式2为false,,最后跳出整个循环。

若开始执行条件表示2为false, 

循环体一次也不执行。

For循环的三个表达式可以是任意表达式。

三个表达式都是可选的。

如果循环不需要任何初始化工作,则表达式1可以缺省。

如循环前需要做多个初始

化工作,可以将多个初始化工作组合成一个逗号表达式,作为表达式1。

如for 

(inti=0,;

i<

=10;

++i) 

;

表达式2也不一定是关系表达式。

它可以是逻辑表达式,甚至可以是算术表达式。

当表达式2是算术表达式时,只要表达式的值为非0,就执行循环体,表达式的值为0时退出循环。

如果表达式2省略,即不判断循环条件,循环将无终止地进行下去。

无终止的循环

称为“死循环” 

,最简单的死循环是 

for 

);

(10.2)While语句:

与for循环等价,可相互代替。

while(表达式) 

or 

语句块;

先计算出条件表达式的值。

如果是false,循环终止;

如果是true,整个

循环体将被执行,而后又回到while语句的第一行,再次对条件进行检查,若为true,接着执行循环体,重复直到条件为false,,跳出整个循环。

用途:

用于循环次数不定的循环。

循环是否结束取决于某一个变量的值(标记控制重复) 

在for和while语句之后一般没有分号,有分号表示循环体就是分号之前的内容(空循环体) 

(10.3) 

Do- 

While语句 

do语句;

while 

首先执行语句,然后判断表达式的值。

如果表达式为0,继续向下执行,

否则,再次执行语句,再次判断表达式的值 

用于至少执行一次的循环。

注意后面有分号;

11跳转语句:

break语句:

跳出整个循环或switch语句。

若有多重循环,跳出含break最近的循

环体。

continue语句:

跳出当前本次循环,接着判断是否执行下次循环周期。

12 

几种典型的循环。

注意格式及应用 

输入验证循环:

以下两种等价,右边一个常用 

"

请输入半径:

//提示输入 

do{ 

“请输入半径:

cin>

radius;

area 

radius 

// 

当radius 

0,重复输入,直到>

2.while(true) 

或while 

(1) 

{ 

“输入一个正整数:

//提示用户并读入数据 

cin 

(num 

-1) 

break;

(num==标志) 

跳出;

//处理数据 

查询循环 

★累加循环 

p=0;

char 

ans;

//用于用户响应 

for(int 

i=1;

=N;

i++) 

p=p+i;

★累乘循环 

p=1 

{cout 

do 

you 

again?

//询问提示 

p=p*i;

//询问输入 

while(ans 

'

Y'

ans 

y'

//询问循环 

编译(compiler):

将高级语言的程序翻译成机器语言,分为解释执行,编译执行 

连接(link):

将目标程序与已有的其它目标程序连接起来,产生一个可执行的程序 

输出流是传给显示器的数据流,将变量或表达式的内容显示在显示器上 

格式 

Ø

输出一个变量的值:

a;

输出多个变量的值:

c;

输出表达式的结果:

“Hello 

world\n” 

endl 

上述情况的组合:

“+”<

“=”<

a+b 

键盘流入的数据流,将键盘输入的数据存入变量 

变量1 

变量2 

… 

变量n;

当程序执行到cin时会停下来等待用户的输入,后面一定是变量名,不可加引号 

用户可以输入数据,用回车(↙)结束。

当有多个输入数据时,一般用空白字符(空格、制表符和回车)分隔。

a为整型,d为double,则对应于cin 

d,用户的输入可以为 

13.2↙ 

12(tab键)13.2↙ 

12↙13.2↙ 

如何定义一个带默认值参数的函数

如何调用一个带默认值参数的函数

h)参数使用默认值

i)参数不使用默认值 

函数

过程单元是程序的基本单位。

在过程化的语言中,过程单元就是程序中某个模块的

表示。

在面向对象的语言中,过程单元说明对象对各种事件是如何响应的。

每个程序都必须有一个名为main的函数,它是程序的入口。

主程序由一个或多个

函数组成 

程序主体(主函数main()):

主要包含如下模块:

(definition 

–input-proocess-ouput) 

(1)变量定义:

为程序中的数据准备存储空间 

declaration 

definition) 

(2)输入阶段:

接受所需输入的信息。

它由两部分组成:

显示提示信息和接收输入(input) 

(3)计算阶段:

完成所需的计算(process)

(4)输出阶段:

输出计算的结果(output) 

函数的主要构成:

函数声明,函数定义,函数调用 

可以把函数想象成数学中的函数。

如f(x)=2x 

参数表是一组自变量x,返回类型是

函数值的类型;

函数声明就是设函数为f(x), 

函数定义(函数头+函数体)就是函数表达式如2x,函数调用就是带值计算如f

(2)=2×

函数声明:

类似于变量声明,所有函数在使用前必须被声明。

又称函数的原型,功能:

说明函数和外界的交流,反映函数调用的全部信息。

包括下列内容:

函数名,函数的参数类型,函数的返回类型 

它的形式为:

返回类型 

函数名(参数表);

返回类型:

是函数的输出值的类型, 

void 

函数没有返回值 

函数名:

是函数的名字。

程序可以通过函数名执行函数体的语句 

参数表:

是函数的输入, 

无参数列表,可不写,但是括号必须有。

参数表中的参数说明之间用“,”分开,每个参数说明可以是类型,也可以是类型后面再接一个参数名。

max(int, 

int);

max(int 

a, 

b);

main( 

函数定义:

函数头+函数体,相当于一个小程序。

函数头:

说明函数和外界的交流,与函数声明一样,参数表要有形参,void除外 

函数体:

一系列独立的程序步骤;

},必须定义在函数体最前面 

形式:

函数名(参数表)//函数头 

code 

here;

//函数体 

Eg 

b) 

//函数定义 

(a 

return(a);

return(b);

函数调用形式:

函数名(实际参数表);

一般出现在主调函数中或其他调用函数中。

max( 

,y);

函数执行过程:

在主程序中计算每个实际参数值。

调用时将实际参数的值赋给对应的形式参数。

在赋值的过程中完成自动类型转换。

(3) 

进入函数体依次执行函数体的每个语句,直到遇见return语句或函数体结束 

(4) 

计算return后面的表达式的值,如果表达式的值与函数的返回类型不一致,则完成类型的转换。

(5) 

用函数的返回值置换函数,继续主程序的执行。

//函数声明 

x, 

y;

max(x 

5, 

3);

//函数调用 

形式参数和实际参数的个数(number)、排列次序(order)、类型(type)要完全相同。

实际参数可以是常量、变量、表达式,甚至是另一个函数调用 

传递方式:

值传递,执行函数调用时,将实参值传递给形参,并替换形参同名的实体 

值传递:

函数获得了主调程序参数变量值的拷贝。

被调程序可以改变这些拷贝,但这对主调程序的环境没有影响。

(5)请注意:

C++中不允许函数定义嵌套,即在函数定义中再定义一个函数是非法的。

一个函数只能定义在别的函数的外部,函数定义之间都是平行的,互相独立的。

例如:

下面的代码在主函数中非法嵌套了一个f()函数定义:

main() 

f() 

//… 

函数参数的传递比较:

按值传递 

以按值传递方式进行参数传递的过程为:

首先计算出实参表达式的值,接着给对应的

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2