C++知识点(整理版)(共18页).docx
《C++知识点(整理版)(共18页).docx》由会员分享,可在线阅读,更多相关《C++知识点(整理版)(共18页).docx(18页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上一、C+标识符的命名规则1.所有标识符必须由一个字母(az或AZ)或下划线(_)开头;2.标识符的其它部分可以用字母、下划线或数字(09)组成;3.大小写字母表示不同意义,即代表不同的标识符,如前面的cout和Cout;二、如何正确地声明变量及其初始化2.C+中变量定义的格式:类型名变量名1,变量名2,变量名n;如:intnum1,num2;(2.1)在C+中,每个变量在使用前必须被定义,以便编译器检查变量使用的合法性。变量定义只是给变量分配相应的空间。(2.2)C+允许在定义变量的同时给变量赋初值。变量未被赋值前,值为未知格式:类型名变量名=初值;或者:类型名变量名
2、(初值);如:intcount=0;或intcount(0);都是定义整型变量count,并为它赋初值0。可以给被定义的变量中的一部分变量赋初值,如:intsum=0,count=0,num;(2.3)一旦定义了一个变量,可以将一个常量赋给该变量。变量赋值过程是“覆盖”过程,用新值去替换旧值如inta;a=123;或a=0x123;都是正确的(2.4)在C+中,定义变量时没有赋初值,然后直接引用该变量是危险的!3.数据类型(datatype):数据的编码方式、值域和可执行的操作。数据类型包括两个方面:数据的取值范围、可用的操作。C/C+中的数据类型分为两大类:基本数据类型:整型、浮点型、字符型
3、和布尔型构造数据类型:字符串、数组、结构、联合和枚举(3.1)整型(int):以补码形式存储。基本型int ;长整型long:long/longint(3.1.1)整数运算时要注意数据的表示范围。如整数用两个字节表示,正整数32767加1的结果为-32768。这称为整数运算的溢出,系统不检查这样的错误,程序员必须自己保证程序中不出现这样的错误。(3.1.2)在某些应用中,不可能出现负数,则整型数中有一半的数值范围是被浪费的。因此在C/C+中可以将所有的数都看成正整数,称为无符号数。无符号数的定义:在各种整数类型前加上关键词unsigned,变成unsignedint,unsignedshort
4、,unsignedlong(3.2)实型:以浮点表示,操作类似于整型,浮点数无法精确表示。(3.2.1)浮点类型的分类: 单精度float ;双精度double(3.3)字符型(char):存放一个字母或符号,占一个字节,存放的是字符的内码。可执行比较、连接等运算。具有双重属性:整数属性和字符属性,整数属性:字符类型即单字节的整数类,字符属性:数据值即为相应字符的Ascii码。字符类型名:char。可分为可打印字符:小写字母、大写字母、数字、标点符号、空格等;非打印字符:换行和报警字符或响铃等控制字符(3.4)布尔型(bool):只有“真”、“假”两个值。可执行判断运算。如boolflag=t
5、rue;(3.5)字符串(string):是类类型,用双引号“ ”表示,可执行字符串比较,连接应用时要加#include如stringstr=“dfhdsf”;三、如何声明常量4.常量:值的直接表示。如1、3、1.57、“A等,又称直接量。(4.1)整型常量可用十进制、八进制和十六进制表示:如十进制:123,-234;八进制:0123十六进制:0x123,0x3a2f(4.2)浮点数常量有两种表示法:(1)十进制表示:1.23,3.14;(2)科学计数法:尾数e指数123e2=123002.25e-3=0.00225;注意:尾数不能为空,指数必须为整数(4.3)字符常量:”a,“S,”2等用一
6、对单引号括起来的数据。字符串常量用双引号(4.4)命名常量:为值指定一个描述性的文字,增加程序的可读性。在C+语言中,用const修饰,如constdoublePI=3.14;见PI即知3.14。注意一般变量名需大写,如PI。二、算术运算符号及其运行规则a) 整数除整数b) % 求模运算5.算术运算符:+(加)-(减)*(乘)/(求商)%(求余)(5.1)“-”可为二元运算符,也可为一元运算符,其余所有的算术运算符都是二元运算符。(5.2)优先级:高*/%,低+-(5.3)整型与整型数运算,结果为整型,如5/2=2;整型与浮点数运算,结果为浮点数,如5/2.0=2.5;字符与整型数运算,结果为
7、整型;字符与浮点数运算,结果为浮点数。浮点数与浮点数运算,结果为浮点数。“%”运算符:取余,其两边都必须是整型数。6.关系运算符:,=,=,=,!=(6.1)优先级:高于赋值运算符,低于算术运算符。关系运算符内部:=和!=较低(6.2)关系表达式:用关系运算符将二个表达式连接起来称为关系表达式。关系表达式的结果是true或false。“等于”运算符是由两个等号组成。常见的错误是在比较相等时用一个等号。=(相等),=(赋值)7.逻辑运算符:&(and)|(or)!(not)(7.1)优先级:!高于关系运算符高于&高于|(7.2)逻辑表达式:由逻辑运算符连接起来的表达式,其结果为“真(true)”
8、或“假(false)”逻辑表达式在执行时,先处理左边。如左边已能决定此逻辑表达式的结果,则右边不执行。因此,在&逻辑表达式中,应把false可能性较大的条件放在左边,在|表达式中,应把true可能性较大的条件放在左边,这样可以减少程序执行的时间8赋值运算符:=的优先级比算术运算符低(8.1)赋值语句:把一个值赋给一个变量。如x=y+z;x=3.14;赋值语句的左边是变量,右边是表达式。(8.2)赋值表达式格式:=如x=x+2。作用:将右边的表达式的值存入左边的变量,整个表达式的值是右边的表达式的结果。赋值运算符是右结合的(8.3)左值(lvalue):在C+中,能出现在赋值运算符左边的表达式称
9、为左值右值(rvalue):赋值运算符右边的表达式的值(8.4)赋值语句:赋值表达式后面加上分号。(8.5)将赋值表达式作为更大的表达式的一部分。如:a=(x=6)+(y=7)等价于分别将x和y的值设为6和7,并将6和7相加,结果存于变量a(8.6)其他运算符与赋值运算符结合的运算符称为复合赋值运算符。格式:变量op=表达式;等价于:变量=变量op表达式;常用的复合赋值运算符有:+=,=,*=,/=,%=如:balance+=deposit;balance-=surcharge;x/=10;salary*=2;(8.7)赋值和运算时的自动类型转换,在进行赋值操作时,会发生类型转换,将取范围小的
10、类型转为取值范围大的类型是安全的反之是不安全的,如果大类型的值在小类型能容纳的范围之内,则平安无事强制类型转换:(类型名)(表达式);或类型名(表达式);如z=(double)x/y;静态转换(static_cast):用于编译器隐式执行的任何类型转换格式:转换类型(表达式)如z=static_cast(x)/y;1.单个分号组成的语句成为空语句2.用括起来的一组语句称为复合语句。在逻辑上看成一个语句。v复合语句可以放在任何单语句出现的地方。3.在复合语句中可以定义变量,但必须定义在最前面。4.逗号表达式语句格式:表达式1,表达式2,,表达式nv逗号运算符的优先级是所有运算符中最低的如a的初值
11、为0,则表达式a+=1,a+=2,a+=3,a+=4,a+=5的结果为155.前置+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子句。格式(1)if(条件测试)语句;即else语句可省略格式(2)if(条件测试)语句1;else语句2;eg.if(grade=60)cout=60)cout“passed”; elsecout=90)co
12、ut=80)cout=70)cout=60)cout“D”;elsecout”E”;(9.2)条件语句使用注意条件的结果值应该是true或false,它们是C+中bool类型的值 条件可为任意表达式,不一定是关系表达式。0为false,非0为true。if语句可以没有else子句。合理的缩排。 if语句的then子句和else子句含有if语句,称为if语句的嵌套。egif(x100)if(x90)语句1;elseif(x80)语句2;else语句3;else语句4;歧义性:如最后一个else跟哪个if配对.。egif(y!=0) if(x!=0) result=x/y;elsecout“err
13、or:y=0”y?x:y;循环语句e) 形式f) 三种循环语句的区别g) 三种循环语句的执行流程10.循环语句:一个完整的循环结构一般由四部分组成:(10.1)For语句:主要用于计数循环v格式:for(表达式1;表达式2;表达式3)语句;or语句快;可以理解为:for(循环变量赋初值;循环条件;循环变量增值)符合循环条件时的执行语句v循环体可以是复合语句或空语句。v循环里所有语句的一次完全执行称为一个循环周期。v执行过程:先执行表达式1,再执行判断表达式2,如果为true,执行一次循环体(即一个循环周期),接着执行表达式3,然后重新执行判断表达式2,若为true,又执行一次循环体,重复直至判
14、断表达式2为false,,最后跳出整个循环。若开始执行条件表示2为false,循环体一次也不执行。vFor循环的三个表达式可以是任意表达式。三个表达式都是可选的。v如果循环不需要任何初始化工作,则表达式1可以缺省。如循环前需要做多个初始化工作,可以将多个初始化工作组合成一个逗号表达式,作为表达式1。如for(int i=0,;i=10;+i);v表达式2也不一定是关系表达式。它可以是逻辑表达式,甚至可以是算术表达式。当表达式2是算术表达式时,只要表达式的值为非0,就执行循环体,表达式的值为0时退出循环。v如果表达式2省略,即不判断循环条件,循环将无终止地进行下去。无终止的循环称为“死循环”,最
15、简单的死循环是for(;);(10.2)While语句:与for循环等价,可相互代替。v格式:while(表达式)语句;or语句块;v执行过程:先计算出条件表达式的值。如果是false,循环终止;如果是true,整个循环体将被执行,而后又回到while语句的第一行,再次对条件进行检查,若为true,接着执行循环体,重复直到条件为false,,跳出整个循环。v用途:用于循环次数不定的循环。循环是否结束取决于某一个变量的值(标记控制重复)v在for和while语句之后一般没有分号,有分号表示循环体就是分号之前的内容(空循环体)(10.3)Do-While语句v格式:do语句;or语句块;while
16、(表达式);v执行过程:首先执行语句,然后判断表达式的值。如果表达式为0,继续向下执行,否则,再次执行语句,再次判断表达式的值v用途:用于至少执行一次的循环。注意后面有分号;11跳转语句:vbreak语句:跳出整个循环或switch语句。若有多重循环,跳出含break最近的循环体。vcontinue语句:跳出当前本次循环,接着判断是否执行下次循环周期。12几种典型的循环。注意格式及应用v输入验证循环:以下两种等价,右边一个常用cout请输入半径:;/提示输入 docoutradius;area=PI*radius*radiuswhile(radius0);/当radius02.while(tr
17、ue)/或while(1)for()coutnum;if(num=-1)break;/if(num=标志)跳出;sum+=num;/处理数据v查询循环累加循环p=0;charans;/用于用户响应for(inti=1;i=N;i+)coutradius;area=PI*radius*radius累乘循环:p=1coutarea=areaendl;for(inti=1;i=N;i+)coutdoyouagain?ans;/询问输入while(ans=Y|ans=y);/询问循环v编译(compiler):将高级语言的程序翻译成机器语言,分为解释执行,编译执行v连接(link):将目标程序与已有的
18、其它目标程序连接起来,产生一个可执行的程序v输出流是传给显示器的数据流,将变量或表达式的内容显示在显示器上格式输出一个变量的值:couta;输出多个变量的值:coutabc;输出表达式的结果:cout“Helloworldn”endl上述情况的组合:couta“+”b“=”a+b变量1变量2变量n;如cina;当程序执行到cin时会停下来等待用户的输入,后面一定是变量名,不可加引号用户可以输入数据,用回车()结束。当有多个输入数据时,一般用空白字符(空格、制表符和回车)分隔。如:a为整型,d为double,则对应于cinad,用户的输入可以为1213.2or12(tab键)13.2or1213
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 知识点 整理 18
限制150内