超简单C++程序30天快速入门教程2课件_第1页
超简单C++程序30天快速入门教程2课件_第2页
超简单C++程序30天快速入门教程2课件_第3页
超简单C++程序30天快速入门教程2课件_第4页
超简单C++程序30天快速入门教程2课件_第5页
已阅读5页,还剩74页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、韩都衣舍官方网站 http:/ 减肥产品排行榜 http:/www.rxq.cc/ 股票学习网http:/ 淘宝最好的减肥药 http:/www.rxq.cc/ 股票入门 http:/ 皮草批发 http:/C+程序程序30天天快速入门教程(二)快速入门教程(二) 2.1 基本数据类型 2.2 表达式与语句 2.3 输入与输出2.4 选择结构2.5 循环结构 2.6 复合数据类型 2.1 基本数据类型 C+预先设置了基本数据类型,分别是整型、实型、字符型和布尔型,程序员可以在程序中直接使用。在基本数据类型的基础上,还可以根据需要定义复合数据类型,例如数组、结构体、共用体和枚举类型,以表达更为复

2、杂的数据。 数据类型指针类型空类型基本类型整型字符型实型(浮点型)布尔型单精度型双精度型构造类型数组类型结构体类型共用体类型标识符标识符就是名字,它由一串字符序列构成。其语法规则是:1.由字母、数字或者下划线(_)组成。2.首字符必须是字母或者下划线。例如num、b2和_a都是合法的C+标识符,3c、ye#和int都是非法的标识符。 常量 在程序运行过程中其值不能改变的量叫做常量。常量分为整型常量、实型常量和字符型常量等。整型常量有23 、-7 、036(八进制) 、0 x2d(十六进制) 、5L(长整型常量) 、6U (无符号常量)等。实型常量有5.87 、3.14f(单精度) 、2e3(指

3、数形式)等。字符型常量有a、n(转义字符) 、”china”(字符串常量)等。布尔型常量,true和false。符号常量可以使用标识符代表一个常量,例如:#define PI 3.14 PI就称为符号常量。还可以用关键字const定义符号常量。例如: const float PI=3.14; const变量必须在定义的时候立刻初始化,而且在程序执行期间,其值不能够被修改。 变量 v在程序运行过程中其值可以改变的量叫做变量。变量对应了内存的一段存贮单元。v变量要先定义,再使用。 变量定义语句的一般形式为: 类型类型 变量名变量名1,变量名,变量名2, ;整型变量 int a=17;/定义整型变量

4、a,并赋初值long b(13467L);/定义长整型变量b,并赋初值unsigned int c,d;/定义无符号整型变量c和d 变量可以在定义时初始化。除了“=”的传统方式之外,C+语言还允许用括号()为变量赋初值。整型变量的取值范围关键字 取值范围short 3276832767unsigned short065535int21474836482147483647unsigned int 04294967295 long21474836482147483647unsigned long 04294967295实型变量 float a;/定义浮点型变量adouble b;/定义双精度型变量

5、blong double c;/定义长双精度型变量c 实型变量的取值范围 关键字 取值范围 精度(位)float3.410 383.410 38 7double1.710 308 1.710 308 15字符型变量 char c=a;/定义字符型变量c,并初始化v字符型数据按ASCII码存储,占一个字节。v给字符变量赋值时可以赋予字符的ASCII码。例如:char a=65的结果是a变量中存放字母A 。案例 #include main ( ) char a=a,b=b,c=c,d=65; a=a+1;b=b+2;c=c+3;d=d+4; coutabcdendl; 运行结果:bdfE 常见的转

6、义字符 字符形式 功 能 n 换行 t 横向跳格(即跳到下一个输出区) v 纵向跳格 b 退格 r 光标移到当前行开头 f 走纸换页 反斜杠字符“” 单引号字符 “ 双引号字符 ddd 1到3位八进制字符。如 123表示八进制数123,即十进制数83 xhh 1到2位十六进制字符。如x21,表示十六进制数21,即十进制数33 布尔型变量 bool a=9;/a的值为trueint b=false;/b的值为0 如果将布尔型数据转换为整型数据,则true转换为1,false转换为0。反之,如果将整型数据转换为布尔型数据,则遵循“非0为真”的原则,将非0数转换为true,0转换为false。 引用

7、 类型类型 &引用名引用名=变量变量;例如:例如: int a=5;/定义一个整型变量定义一个整型变量a,初,初值为值为5 int &r=a;/定义一个整型引用定义一个整型引用r,是,是变量变量a的别名的别名 引用是一个变量或者对象的别名。引用是一个变量或者对象的别名。引用在定义的同时,必须立即初始化,即作为一个已经定义的同类型变量的别名,而且以后不能更改。 2.2 表达式与语句表达式描述了对哪些数据,以什么顺序施以什么样的操作,程序中对数据的运算是通过表达式完成的。 语句是程序构成的最小单位,用来向计算机发出操作指令。算术运算符 C+语言的算术运算符共有5种: +(加)(减)*(乘)/(除)

8、%(求余)。 %运算的操作数必须为整数。两个整数相除,结果仍然是整数。例如5/3=1,-9/4=-2。整型除法与实型除法是不同的。例如1/2的结果是0,而1.0/2.0的结果是0.5。 赋值运算符 变量变量=表达式表达式 例如:a=8; /将8赋给变量ay=3*8+9/2;/将右边表达式的值赋给变量y左值必须是变量复合赋值运算符在赋值运算符之前加上其它运算符,可以构成复合赋值运算符。 -= *= /= %= (与算术运算符组合)= &= = = (与位运算符组合) 案例x+=8等价于x=x+8x*=y+5等价于x=x*(y+5)表达式a+=a-=a*a,若a的初值为5,则该表达式的求解步骤是:

9、先进行a-=a*a的运算,相当于a=a-a*a,结果是-20,a的值也是-20;然后计算a+=-20,相当于a=a+(-20),结果是-40。因此整个表达式的值是-40,a的值也是-40。 自增自减运算符 l 自增运算符使变量的值增加1,而自减运算符则使变量的值减少1。l其操作数只能是变量。l+i和-i是前缀运算符,i+和i-是后缀运算符。以自增运算符为例,做前缀运算时,先将变量的值增1,然后再使用它的值;做后缀运算时,先使用该变量的值,再将它的值增1。 案例 int n=3,m;执行语句m=n+;之后,m的值是3,n的值是4;而执行语句m=+n;之后,m的值是4,n的值也是4。 后缀运算存在

10、计算上的延迟,即先取值,经过延迟之后再修改变量的值。 强制类型转换运算符 (类型)(表达式)(类型)(表达式)使用强制类型转换运算符,可以把表达式的结使用强制类型转换运算符,可以把表达式的结果强行转换为一个指定的类型。果强行转换为一个指定的类型。 sizeof运算符用于计算某种类型的实体在内运算符用于计算某种类型的实体在内存中所占的字节数。例如存中所占的字节数。例如sizeof(int)的值为的值为4,sizeof(double)的值为的值为8。如果。如果a是是int型型变量,则变量,则sizeof(a)的值也是的值也是4。 关系运算符C+语言提供了6个关系运算符,分别是: = =b+c;/先

11、计算a*2,值为14;然后计算b+c,值为11;最后比较,表达式的值为true abc;/先计算ab,值为true;然后计算truec,即1c,表达式的值为false 2=2=2;/先计算2=2,值为true;然后计算true=2,即1=2,表达式的值为false逻辑运算符逻辑运算符 C+语言提供了3个逻辑运算符:!、&和|,分别表示逻辑非、逻辑与和逻辑或运算,运算结果为逻辑值:true(真)或者false(假)。 aba & ba | b! a00001010111001011110案例 int a=2,b=1;!a; /a的值2先转换为true,运算结果为falsea&b-1; /a的值2

12、先转换为true,b-1的值为0,转换为false,运算结果为falsea|b; /a的值2先转换为true,b的值1也转换为true,运算结果为true构造条件 灵活运用关系表达式和逻辑表达式,可以构建复杂的条件,解决工程实际问题。例如:1.描述321数学常识的对应C+表达式为32&21。2.描述字符变量c的值是字母的C+表达式为c=a&c=A&c=Z。3.描述m能够被n整除的C+表达式为m%n=0。位运算符 & 按位与 按位取反| 按位或 按位右移按位与 运算规则:0&0=0,0&1=0,1&0=0,1&1=1。 int a=211,b=150,c; c=a&b; 图 2-3 按 位与 运

13、算 操作 a=0000000011010011 十 进 制值 为 211 b=0000000010010110 十 进 制值 为 150 a&b c=0000000010010010 十 进 制 值 为 146 按位或 运算规则:0|0=0,0|1=1,1|0=1,1|1=1。int a=59,b=166,c; c=a|b; 图 2-4 按位或运算操作 a=0000000000111011 十进制值为59 b=0000000010100110 十进制值为166 a|b c=0000000010111111 十进制值为 191 按位异或 运算规则:00=0,01=1,10=1,11=0。 int

14、 a=42,b=103,c; c=ab; 图 2-5 按位异或运算操作 a=0000000000101010 十进制值为42 b=0000000001100111 十进制值为103 ab c=0000000001001101 十进制值为 77 按位取反 运算规则:0=1,1=0。 int a=42,c; c=a; 图2-6 按位取反运算操作 a=0000000000101010 十进制值为42 a c=1111111111010101 十进制值为-43 按位左移 ab,其作用是将a的补码位全部右移b位,右移移出的二进制位全部丢弃,左边补b个0或1。 右移n位实际上相当于被2的n次方整除。 条件

15、运算符 表达式表达式1?表达式表达式2:表达式表达式3 运算规则是,如果表达式1的值为真,则以表达式2 的值作为条件表达式的值,否则以表达式3的值作为条件表达式的值。 例如:max=(ab)?a:b 整个表达式的值即max的值,它为a和b的最大值。 逗号运算符 表达式表达式1 ,表达式,表达式2 , ,表达式,表达式n 逗号表达式的求解过程是:从左向右,依次计算。即先求表达式1的值,再求表达式2的值,最后求表达式n的值,整个表达式的值是表达式n的值。l例如a=(y=9,y+1),首先将9的值赋给y,然后计算y+1,将结果10赋给a。 数据类型转换数据类型转换 数据类型的转换可以归纳成3种转换形

16、式:自动转换、强制转换和赋值转换。 u自动转换是在混合运算时,自动把低类型数据转换为高类型。 u强制转换是用强制转换运算符,把数据强行转换为所需类型。 u赋值转换是在赋值过程中,把赋值运算符(=)右边数据的类型自动转换为左值的类型。 类型转换规则 将整型转换为浮点型时,数值不变,但以浮点数形式存储到变量中。将实型转换为整型时,舍弃实型数据的小数部分。短整型(short)转换为长整型(long)时,高16位全补上符号位。长整型数据转换为短整型,只保留低16位数据,高16位数据则被丢弃。无符号数据转换为有符号类型,最高位由数值位变为符号位;有符号数据转换为无符号类型,则最高位由符号位变为数值位。C

17、+语句 C+语句可以分为简单语句、复合语句和流程控制语句,语句以分号“;”结束。简单语句包括表达式语句、函数调用语句和空语句。n表达式语句的一般形式为:表达式;表达式;n函数调用语句一般形式为:函数名(参数表);函数名(参数表); 复合语句 用一对花括号将多条逻辑上相关的语句组合在一起,在语法上相当于一条语句。例如: t=x; x=y; y=t; 2.3 输入与输出C+语言采用输入输出流的方法解决程序的输入输出。C+的流(stream)是对输入输出的一种抽象,指的是计算机中的一系列字符(字节)从一个对象流动到另一个对象。C+语言用cout对象完成标准输出,cin对象完成标准输入。cout和ci

18、n是C+语言预定义的输入输出流类的对象,在使用之前,需要在程序头部添加以下一条语句 #include coutC+标准输出的格式是:cout表达式1表达式2表达式n;是插入运算符,与cout对象相配合,而且可以连续使用。其作用是将某个数据插入到输出流中,最后显示在屏幕上。例如: cout”a=”a”,b=”b变量1变量2变量n;是提取运算符,与cin对象相配合,而且可以连续使用。其作用是将某个数据从输入流中提取出来,赋给相应的变量。例如: cinab;常用的I/O流操纵符dec 十进制表示(默认方式)hex 十六进制表示oct 八进制表示setfill(char) 设置填充字符setpreci

19、sion(int) 设置浮点数的精度setw(int) 设置输出域宽endl 换行案例例如输出浮点数2.71828,要求输出占6位,其中有4位有效数字,则输出语句为: coutsetw(6)setprecision(4)2.71828endl;2.4 选择结构选择结构使得程序具有了初步的智能,可以根据条件成立与否,决定从不同的分支中选择执行某一分支的操作。 本节介绍if语句和switch语句。if语句if-else结构是if语句的基本型,一般形式为: if(表达式) 语句1 else 语句2执行流程:先计算表达式的值,如果表达式的值为true,则执行语句1;表达式的值为false,则执行语句2

20、。登陆界面 #include int main() const int p=123; int m; cout请输入密码:m; if(m=p) cout恭喜您,登陆成功!endl; else cout对不起,登陆失败!endl; return(0); 排序 #include #include int main() int a,b,t; cout请输入两个整数:ab; if(ab) t=a; a=b; b=t; coutsetw(3)asetw(3)bendl; return(0); if语句的嵌套 if(表达式1) if(表达式1_1) 语句1_1 else 语句1_2 else if(表达式2

21、_1) 语句2_1 else 语句2_2计算分段函数的值1 #include int main() float x,y; cout请输入x的值:x;/输入x的值 if(x8) /判断x是否小于8 if(x2) /判断x是否小于2 y=2*x+1; else /x在2和8之间 y=x-3; else /x8 y=3*x-1; couty=yendl; return(0); else-if结构 if(表达式1) 语句1 else if(表达式2) 语句2 . else if(表达式n) 语句n else 语句n+1计算分段函数的值2 #include int main() float x,y; c

22、out请输入x的值:x;/输入x的值 if(x2) /判断x是否小于2 y=2*x+1; else if(x8) /判断x是否在2和8之间 y=x-3; else /前面两个条件都不满足 y=3*x-1; couty=yendl; return(0); else与if配对C+语言规定,从最内层开始,else总是与其之前最近的if配对。如果想限制某个if的配对,可以采用复合语句的方式。 if(表达式1) if(表达式2) 语句1 else 语句2 switch语句switch语句可以根据表达式的值处理多个分支。一般形式: switch(表达式) case 常量1:语句组1 case 常量2:语句

23、组2 case 常量n:语句组n default: 语句组n+1 switch执行流程先计算表达式的值,然后逐一与n个case右边的常量比较。如果和其中某个常量相等,则从该case的冒号后面开始执行;如果与所有case右边的常量均不相同,则执行default后面的语句。 考核等级 switch(g) case A: case a: cout90分100分endl; break; case B: case b: cout80分90分endl; break; case C: case c: cout70分80分endl; break; case D: case d: cout60分70分endl;

24、 break; case E: case e: cout60分以下endl; break; default: cout输入的等级有误!endl; 2.5 循环结构uC+语言提供了三种循环语句,分别为while语句、do-while语句和for语句。u学习循环结构时,一定要注意循环的一些要素,例如循环体、循环初值、循环条件和循环次数等。while语句 while(表达式) 循环体 否 是 表达式为真 循环体 语句 求和1 #include int main() int sum=0,i=1; while(i=100)/i=100时,重复执行如下语句 sum=sum+i; /累加 i+; couts

25、um is sumendl; return(0); do-while语句 do 循环体 while(表达式); 否 是 循 环 体 表 达 式 为 真 语 句 求和2 #include int main() int sum=0,i=1; do sum=sum+i; /累加 i+; while(i=100); coutsum is sumendl; return(0); for语句 for(表达式1;表达式2;表达式3) 循环体for语句的括号中3个表达式都可以省略,但是两个分号不能省略。表达式1称为初值表达式,只计算一次,用于设置初值。表达式2是循环条件,表达式3称为修正表达式,用于修正循环条

26、件,使得最终能够退出循环。 否 是 计算表达式 1 表达式 2 为真 循环体 计算表达式 3 语句 求和3 #include int main() int sum,i; for(i=1,sum=0;i=100;i+) sum=sum+i; /累加 coutsum is sumendl; return(0); 循环嵌套 循环嵌套是指在循环体中又包含另一个完整的循环结构。通常把嵌套在循环体内的循环结构称为内循环,把外层的循环结构称为外循环。例如: while() for(;) 打印九九乘法口诀表 #include #include int main() int i,j; for(i=1;i=9;i

27、+) /控制输出的行数 for(j=1;j=i;j+)/输出每一行的内容 coutsetw(2)j*setw(2)i=setw(2)i*j; coutendl;/每行结束后,换行 return(0); break语句break语句的作用是跳出本层结构,转去执行下面的语句。 for(i=1,sum=0;i3000) break; sum=sum+i; /累加 continue语句continue语句的作用是提前结束本次循环,即跳过循环体中剩余的语句,执行下一次循环。 for(i=1,sum=0;i=100;i+) if(i=50|i=80) continue; sum=sum+i; /累加 2.6 复合数据类型 结构体类型是自定义的一种复合数据类型,主要说明数据实体的各个成员及其类型。使用结构体类型之前必须先定义,一般形式为: struct 结构体名结构体名 成员表列成员表列 ;说明花括号内是对该结构体各个成员的类型声明,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论