《数据类型和运算符》PPT课件.ppt

上传人:tia****nde 文档编号:12731330 上传时间:2020-05-20 格式:PPT 页数:34 大小:602.50KB
返回 下载 相关 举报
《数据类型和运算符》PPT课件.ppt_第1页
第1页 / 共34页
《数据类型和运算符》PPT课件.ppt_第2页
第2页 / 共34页
《数据类型和运算符》PPT课件.ppt_第3页
第3页 / 共34页
点击查看更多>>
资源描述
第三章数据类型、运算符与表达式,3.1C的数据类型,C语言的数据结构是以数据类型形式出现的.C的数据类型如下:,语言中的数据有常量和变量之分,它们分别属于以上这些类型。,程序举例,求圆的周长和面积main()floats,area,r;r=4.2;s=2*3.14*r;area=3.14*r*r;printf(s=%f,area=%f,s,area);,X+2=3,变量,常量,程序中哪些是常量、变量,3.2.1常量,1.常量:在程序运行过程中其值不能被改变的量。如:15,-3为整型常量5.4,1.23为实型常量a,b为字符型常量,2.符号常量:用一个标示符代表一个常量。符号常量一般用大写字母表示。如:definePI3.1415926(#define是宏定义命令)常量一般用于初始化变量;常量不占用存储空间。,3.2.2变量,变量:其值可以改变的量,变量的定义一般是放在函数的开始部分声明。变量占用内存空间。例如:inta=5;每个变量都有名字,变量名习惯用小写字母表示,一个变量在内存中占据一定的存储单元,变量名实际是一个符号地址。通过变量名找到相应的内存地址,从其存储单元中读取数据。,3.2.2变量,标识符:用来标识变量名、符号常量名、函数名、数组名、类型名的有效字符序列称为标识符。(不包括文件名)标识符的命名规则:字母、数字、下划线构成,第一个字符是字母或下划线;区分大小写;sun、Sun、SUN是三个不同的变量。长度(最好不超过8个字符)见名知义,注:变量名一般用小写字母表示。变量必须“先定义,后使用”,一般在函数的开始部分进行定义。每个变量有一个名字并指定为确定的类型,通过变量名区分不同的变量。,3.3整型数据整型常量,整型常量有如下三种形式:十进制整数如:124,-98八进制整数要求以0开头,如:0123十六进制整数要求以0 x开头,如:0 x12计算机直接处理的是二进制数,3.3整型数据整型变量,整型变量:有如下四种类型:1.基本型:用int表示,占2字节。2.短整型:用shortint或short表示,占2字节。3.长整型:用longint或long表示,占4字节。以上三种类型的变量,最高位为符号位,用1表示负数,用0表示正数。4.无符号型,不能存放负数,分别表示为unsignedint,unsignedshort,unsignedlong关于各种类型在内存中所占的位数以及数的范围见p43-表3-1,必须记住,实型常量1.十进制形式:由数字和小数点组成。如:0.0,123.0,0.12,12.34。2.指数形式:如:123e2和123E2都表示1231010。注意:e或E的前面要有数字、后面必须是整数。规范化指数形式:字母E前数的小数点左边应有(只能有)一位非零数字。如1.23E4,3.4.1实型数据-实型常量,3.4实型数据,3.4.2实型数据-实型变量,实型数据在内存中按照指数形式存储实型变量分类1.单精度型:用float表示,在内存中占4个字节有效数字67。2.双精度型:用double表示,在内存中占8个字节有效数字1516。3.长双精度型:用longdouble表示,在内存中占16个字节。floata;/*float只能接收7位有效数字,a=123456.789;因此最后两位小数不起作用*/,实型常量的类型实型常量作为双精度double来处理,若在数的后面加字母f或F如(1.65f),则按单精度float处理。,程序举例,main()intn;floatp,sum;n=20;p=25.5;sum=n*p;printf(“sum=%f”,sum);,注意:何时用实型何时用整型,小明给同学买书,3.5字符型数据,3.5.1字符常量3.5.2字符变量3.5.2字符串常量,3.5.1字符常量,C字符常量是用单引号括起来的一个字符.如a、A、?转义字符:一个以开头的字符序列.见教材P48表3-3,见表3-3,字符,功,能,n,换行,t,横向跳格,(,即跳到下一个输出区,),v,竖向跳格,b,退格,r,回车,f,走纸换页,反斜杠字符,“,“,”,单引号字符,ddd,1,到,3,位,8,进制数所代表的字符,,xhh,1,到,2,位,16,进制数所代表的字符,3.5.2字符变量,字符型变量:只能存放一个字符,其定义形式:charc1,c2;c1=a;c2=b;字符数据在内存中的存储形式:将一个字符常量存放到字符变量中,是将该字符的ASCII码存放到存储单元,占用一个字节,其存储形式与整型数据的存储形式类似.,标准ASCII表,1.字符型数据与整型数据通用,即可以字符形式(%c)输出,也可以整数形式(%d)输出.printf(%c,%d,c1,c1);2.字符型数据和整型数据可以相互赋值.inti;charc;i=a;c=97;printf(%c,%c,i,c);Printf(“n%d,%d”,i,c);,说明:,3_2,3.6变量赋初值,赋值语句,Inta,b,c;a=b=c=5;对,C语言允许在定义变量的同时使变量初始化。如:inta=3;floatf=3.56;charc=a;inta,b,c=5;对一部分变量赋初值不可以:inta=b=c=5;应该inta=5,b=5,c=5;,初始化不是在编译阶段进行的,是程序运行时赋初值.inta=5;相当于inta;a=5;inta,b,c=5;相当于inta,b,c;c=5;3_6,3.7各类数值型数据间的混合运算,整型、实型、字符型数据间可以混合运算,如:10+a+1.5-8765.1234*b混合运算时,数据要先转换成同一类型,类型转换是由系统自动进行的。转换规则如图:,设i为int型,f为float型,d为double型,e为long型10+a+i*f-d/e,强制类型转换运算符,作用:将一个表达式的值转换为所需类型.一般形式:(类型名)(表达式)如:(double)(x+y)将x+y的值转换成双精度型。(double)x+y只将x的值转换成双精度型,而原来变量的类型不变。对于求模运算符,如果两侧的运算对象类型不同,则只能用强制类型转换的形式floatx(int)x%3,3_3,运算符,a+b*2!c%n,红色为运算符,C语言的运算是如何完成?,1.优先级2.结合性,C运算符,1.算术运算符(+-*/%)2.关系运算符(=|1.j=+i;(i=4,ij,j=4)2.j=i+;(ij,j=3,i=4),例如:main()inti=3,j,k;j=i+;k=-i;printf(%d,%d,%d,i,j,k);,注意:1.+、-运算符只能用于变量,不能用于常量或表达式.5+,(a+b)+是不合法的.2.+、-结合方向是自右向左,3_4,3.9赋值运算符和赋值表达式(p59),赋值运算符等号(=),是将一个数据赋给一个变量。如:a=3+4;就是将3+4的值7赋给变量a。如果赋值运算符两侧的类型不一致,要进行类型转换。1.实型整型时,舍弃小数.inti;i=3.56;i的值为3.2.整型实型时,补足有效位数.floatf;doubled;f=23;d=23;则f为23.00000,d为23.00000000000000.3.整型字符型时,将低八位送到字符型变量,赋值表达式,定义:用赋值运算符将一个变量和一个表达式连接起来的式子.一般形式:变量赋值运算符表达式1.赋值表达式的值就是被赋值的变量的值。a=5;表达式的值为5.2.赋值运算符的结合性:自右向左a=b=5例2:a+=a-=a*a设a的值为12,则按下面的顺序求解。a-=a*a得到a=-132a+=-132得到a=-264,复合的赋值运算符,在赋值符“=”之前加上算术运算符或位运算符就可以构成复合的赋值运算符。C语言规定可以使用10种复合赋值运算符,这里先介绍5种。+=,-=,*=,/=,%=如:a+=b+4相当于a=a+(b+4)x%=y+3x=x%(y+3),自学:3.10逗号运算符和逗号表达式教材作业:p663.63.83.103.12,1.设有intx=11;则表达式(x+*1/3)的值是_。A)3B)4C)11D)122.若已定义x和y为double类型,则表达式x=1,y=x+3/2的值是_。A)1B)2C)2.0D)2.53.若a是int型变量,则表达式(a=4*5,a*2),a+6的值为_。4.main()inti=3,j,k;i+;+i;j=i+;k=-i;printf(%d,%d,%d,i,j,k);,5,5,5,练习题,n=n%an=2a=a+2a=5a=a-5a=0,5.表达式18/4*sqrt(4.0)/8值的数据类型为_。(sqrt的功能是求平方根)intB)floatC)doubleD)不确定6.设i=3,j=4,程序段中执行i+;+j后,printf(%d,i+j);的输出结果为_。9B)7C)8D)67.以下程序的输出结果是_。#includemain()inta=3,n=5;printf(%dn,(a-=a+=n%=a);,8.以下程序运行后的输出结果是。main()charm;m=B+32;printf(%cn,m);,9.以下程序运行后的输出结果是。main()intp=30;printf(%dn,(p/30?p/10:p%3);,10.已知i、j、k为int型变量,若从键盘输入:1,2,3,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是A)scanf(“%2d%2d%2d”,11.以下选项中,非法的字符常量是A)tB)17C)“n”D)xaa,12.以下非法的赋值语句是A)n=(i=2,+i);B)j+;C)+(i+1);D)x=j0;,
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!