第二章 基本数据类型及表达式_第1页
第二章 基本数据类型及表达式_第2页
第二章 基本数据类型及表达式_第3页
第二章 基本数据类型及表达式_第4页
第二章 基本数据类型及表达式_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

1、,引例,数据类型,常量与变量,词法符号,第二章,基本数据类型及表达式,运算符和表达式,?,例题:,已知三角形的两,边,a,b,及夹角,?,求第三边,c,。,),cos(,2,2,),cos(,2,2,2,2,2,?,?,ab,b,a,c,ab,c,b,a,?,?,?,?,?,?,?,?,a,b,c,?,计算公式:,),cos(,2,2,),cos(,2,2,2,2,2,?,?,ab,b,a,c,ab,c,b,a,?,?,?,?,?,?,?,?,引,例,/*-,求三角形的边,-*/,#include ,#include ,void main( ),float a, b, alf, c;,a=1.

2、0;,b=2.0;,alf=0.2;,c=,sqrt,(a,*,a+b,*,b-2,*,a,*,b,*,cos,(alf);,coutc;,设:,a=1.0,b=2.0,?,=0.2,(弧度),),cos(,2,2,2,?,ab,b,a,c,?,?,?,/*,注释,*/,#include ,头文件,void main( ),分号是,C+,语句,的一部分,/,定义变量,/,给变量赋值,/,输出结果,引,例,词法符号,?,字符集,26,个小写字母:,a-z,26,个大写字母:,A-Z,10,个数字:,0-9,其他符号:,+ -,* / =,.;?,”,|!#%,例如,:,int x, y;,flo

3、at sum;,char c;,?,变量名:,只能由英文字母、数字和下划线组成,,(,标识符,),并且必须以字母或下划线开头。,命名原则:,“见名知意”,注意:在定义常变量时必须对它初始化,此后,它的值不能再改变。,常量与变量,?,常变量:,在定义变量时,如果加上关键字,const,,,则变量的值在程序运行期间不能改变,这种变量就,称为常变量或者符号常量。,例如:,const int a=5,;,?,一般格式:,先计算赋值号右侧表达式的值,再赋值给左侧,的变量。,赋值表达式,变量名,=,表达式,?,功能:,如果将赋值表达式后加上“,;,”就构成赋值语句。,数学:,n=n+1,C+,:,n=n+

4、1,?,特点:,“新来旧去,取之不尽”,?,注意:,“形同意不同”,-,独立赋值语句的使用,赋值表达式,a=5;,b=b+a;,b=4;,5,a,4,b,9,-,赋值表达式的使用,x=5+2*(y=3+6);,y=3+6;,x=5+2*y;,a = b = c = 5;,c=5;,b=c;,a=b;,赋值表达式的值是赋完值以后左侧变量的值,赋值运算符是右结合:从右往左算,C+,允许在定义变量的同时给变量赋一个初始值,,这就是,变量的初始化,。,int,a=3;,/*,定义整型变量,a,,初值为,3 */,float,f=3.56; /*,定义实型变量,f,,初值为,3.56 */,char,c

5、=a; /*,定义字符变量,c,,初值为,a */,int,a, b, c=5,;,/*,定义整型变量,a,、,b,、,c,,且,c,的初值为,5 */,赋值表达式,算术运算符:,*,/,%,a%b,a,、,b,必须是整型数,例:,5%3,5.0%3,出错,2,+,算术表达式,算术表达式:,例:,a,*,a-2,*,a,*,b,*,cos(alf),(a+b)/(c+v),b,*,b-4,*,a,*,c,a+b/1.5+,a,字符型与整型通用,字符数据用它的,ASCII,码值参加运算,d,c,b,a,b,a,x,ab,?,?,?,?,?,?,sin,a*b+sin(x)*sqrt(a+b)-(

6、a+b)/(c-d),),lg(,2,y,x,b,ax,?,?,a*x*x+b*log10(x+y),算术表达式,例:将下面的数学公式表示成算术表达式,表达式中的乘号不能省,注意:,所有函数的参数都要用小括号括起来,分式一定要加小括号,举例(表达式类型),6.0/2.0=3.0,1/2,=0,3/2*3,=3,3.0/2*3,=4.5,1,1.5,6.0/2=3.0,1/2.0,=0.5,?,算术运算符的优先次序:,*,,,/ , %,的运算优先级高于,+,,,-,算术表达式,?,表达式的类型,:,(1),相同类型的数据进行运算,结果仍然为该种类型;,(2)%,:两个操作数必须为整数,余数符号

7、同被除数;,(3),不同类型的数据运算,系统会自动进行类型转换。,转换原则,:将低级数据类型转换为高级数据类型;,一边转换一边计算。,算术表达式,?,强制类型转换,功能:把表达式的运算结果强制转换成类型说明符,所表示的类型。,注意:在强制类型转换时,原来变量的类型和值并不会,发生变化。,一般形式为,: (,类型名,)(,表达式,),如:,(int)6.25 (double)i,赋值时的类型问题,赋值时的类型转换,“,=,”两侧的类型不一,致,“,=,”两侧的类型一致,直接赋值,1,计算右侧表达式的值;,2,将,计算结果,转换成与,左侧变量相同的类型;,void main( ),int a, b

8、;,float c, d;,a=13;,c=a/2;,d=(int)c%5;,b=c/4;,a,b,c,d,13,6.0,1.0,1,.;,3,赋值。,复合赋值,复合赋值运算符:,+=,=,*=,/=,%=,如:,x+=y+3,等价于,x=x+(y+3),x,=y+3,等价于,x=x,(y+3),x,*,=y+3,等价于,x=x,*,(y+3),x,/,=y+3,等价于,x=x,/,(y+3),x,%,=y+3,等价于,x=x,%,(y+3),复合赋值,例,1,:,int a=1, b=3;,a+=1;,b*=a+2;,a,b,1,3,a=a+1;,b=b*(a+2);,2,12,k,i,m,

9、i=i*k;,2,2,4,k=k+i;,6,m=k;,6,例,2,:,int k=2, i=2, m;,m=k+=i*=k;,复合赋值运算符和赋值运算符运算优先级相同,,结合方式也采用右结合。,增量运算符,自加运算符:,+,自减运算符:,-,-,x,+,等价于,x=x,+1,x,-,等价于,x=x,-1,?,两个运算符既可以放在变量的前面,也可以放在变量,的后面,分别称为前置增量运算和后置增量运算。,?,作为独立语句使用时,前置增量运算和后置增量运算,作用是相同的。,i+;,+i; /,这两条语句都可以使变量,i,的值加,1,+i,-,i,是前置增量运算,i+, i,-,是后置增量运算,增量运

10、算符,?,在表达式中,前置运算与后置运算的含义是不同的。,?,前置运算:先对变量的值进行增量运算,然后再使用增,量运算后的变量值参与表达式其它部分的计算。,?,后置运算:先使用变量当前值参与表达式计算,整个表,达式运算完成后,再对变量进行增量运算。,int x=1, y;,y=+x;,x,y,1,2,x=x+1;,y=x;,2,int x=1, y;,y=x+;,x,y,1,1,x=x+1;,y=x;,2,逗号运算符,逗号表达式的形式,表达式,1,,表达式,2,,表达式,3,,,表达式,n,注意(,1,)逗号表达式的值为最后一个表达式的值,(,2,)逗号的优先级最低,例:,x=y=(z=3,2

11、*3),x=y=z=3,2*3,x=(y=z=3,2*3),数,据,输,出,?,cout,输出,cout,表达式,1,表达式,2,表达式,n,;,:称为插入运算符,表达式:输出项,还可以是常量或变量。,例,1,:,coutHello, world!;,coutc=c;,例,2,:,coutaba+b+5,;,如果变量,a,、,b,定义为整型,值分别为,3,和,4,,则在屏幕上,显示为:,3412,couta;,coutb;,couta+b+5;,couta=a,b=b,a+b+5=c;,couta b c ;,coutaendlbendlcendl;,Hello, world!,c=1.039

12、1,功能:在显示器上显示表达式的“值”或变量的“值”。,coutabc,;,3123.456a,?,couta b c,;,如果输出结果为:,a=3b=123.456c=a,,,cout,语句如何写?,3 123.456 a,?,couta=a=bc=c,;,?,couta=aendl=bendlc=c,;,a=3,b=123.456,c=a,例,1,:,a=3, b=,123.456, c=,a,写出下列语句的运行结果:,couta=an=bnc=c,;,举,例,数,据,输,入,?,cin,输入,cin,变量,1 ,变量,2,变量,n,;,:称为提取运算符,功能:暂停程序执行,从键盘上输入相

13、应数据赋给相应的变量,输,入,缓冲区,a,b,内存,单元,程,序,运,行,时,例如:设,a=1,b=2 ,c=3,d=4,下面,三种输入数据的形式都正确。,cinabcd,;,1,2,3,4,?,1,2,3,4,?,1,(按,Tab,键),2,?,3,?,4,?,数,据,输,入,注意事项:,(,1,),“,”,后面只能跟变量名;,(,2,),cin,后面所跟的变量可以是任何数据类型;,(,3,)多变量时,每个变量前必须加,“,”,;,(,4,)可以为整型变量输入各种进制的数据;,(,5,)使用,cin,前最好使用,cout,语句提示。,举,例,数据输入为:,2,3,a,?,运行结果为:,a=2

14、b=3c=a,例,4,:设,a=2,b=3,c=,a,,写出执行下面的,cin,语句时,,数据输入的形式和输出结果。,#include ,void main(),int a,b;,char c;,cout,“,please input 2 integer ,a char:,”,cinabc;,couta=a=bc=c;,举,例,若数据输入为:,23,a,?,运行结果为:,a=23b=0c=,蘌,例,4,:设,a=2,b=3,c=,a,,写出执行下面的,cin,语句时,,数据输入的形式和输出结果。,#include ,void main(),int a,b;,char c;,cinabc;,couta=a=bc=c;,举,例,例,2,:前例:,/*-,求三角形的边,-*/,#include ,#include ,void main(),float

温馨提示

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

评论

0/150

提交评论