欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    修改第二章数据与运算.ppt

    • 资源ID:6361641       资源大小:394KB        全文页数:63页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    修改第二章数据与运算.ppt

    第二章 数据与运算,2.1 C的数据类型2.2 常量与变量2.3 整型数据2.4 实型数据2.5 字符型数据2.6 变量赋初值2.7 各类数值类型数据间的混合运算2.8 算术运算符和算术表达式2.9 赋值运算符和赋值表达式2.10 逗号运算符和逗号表达式,2.1 C的数据类型,C语言的数据结构是以数据类型形式出现的。C的数据类型如下:,数据类型,基本类型,空类型(void),指针类型(*),构造类型,整型,字符型(char),实型,枚举类型(enum),单精度类型(float),双精度类型(double),数组类型,结构体类型(struct),共用体类型(union),短整型(short),整型(int),长整型(long),2.2.1 常量和符号常量一、常量的定义二、常量的分类,2.2 常量与变量,在程序运行过程中,其值不能被改变的量称为常量。,常量,字面常量,符号常量,整型常量:12、0、-3、,实型常量:3.14、-2.3,字符型常量:a、w,1、符号常量定义,2.2 常量与变量,就是用一个标识符代表一个常量,称为符号常量。,例 3.1,#include#define PI 3.14main()int r=4;double s;/*所有的实数运算均以双精度进行*/s=2*r*PI;printf(s=%fn,s);,1、符号常量不同于变量,它的值在其作用域内不能改变,也不能再被赋值。,注意:,2、符号常量名用大写,变量用小写,以示区别。,符号常量的好处:,含义清楚,一改全改,2.2.2 变量1、变量的定义2、标识符,2.2 常量与变量,其值可以改变的量,称为变量。,用来标识变量名、符号常量名、函数名、数组名、类型名、文件名的有效序列称为标识符。,(1)、标识符定义,(2)、标识符的命名规则,C语言规定标识符只能由字母、数字和下划线三种字符组成,且第一个字符必须为字母或下划线。,2.2 常量与变量,1、大写字母和小写字母被认为是两个不同的字符。一般变量名用小写字母表示。,注意:,2、32个关键字不能用于标识符。,练习题:对下列各小题,若给出的是标识符,请选择A;若给出的是关键字,请选择B;否则,请选择C()Book()I like C()WHILE()scanf()month_name()const()5abc()for()student.num()break()main()_7898,A,C,A,A,A,B,C,B,C,B,A,A,3、变量的使用在C语言中,要求对所用到的变量作强制定义,也就是“先定义、后使用”。目的:(1)凡未被事先定义的,不作为变量名,这就能保证程序中变量名使用的正确。(2)每一个变量被指定为一确定类型,在编译时就能为其分配相应的存储单元。(3)指定每一变量属于一个类型,可据此检查该变量所进行的运算是否合法。,2.2 常量与变量,2.3.1 整型常量的表示方法,2.3 整型数据,C整常数的三种形式表示:,(1)十进制整数。如12,-256,0。,(2)八进制整数。以0开头的数是八进制数。如:0123表示八进制数123。即:(0123)8=(83)10 八进制转十进制:1*82+2*81+3*80=83 十进制转八进制:8 83 3 10 2 1,例:十进制5,求其二进制。2 5 1 2 0 1 510=(101)2,(3)十六进制整数。以0X(0 x)开头的数是十六进制数(其中1015用af或AF表示)。如:0X123表示十六进制数123。即(0 x123)16=(291)10(0 xA5)16=10*161+5*160=(165)10 1*162+2*161+3*160=291 16 291 3 16 165 5 18 2 10 1,(00001111)2=(15)10=f16(00010001)2=1710=1116(00000111)2=(7)10=78(00001011)2=(11)10=138问题:1、若有以下定义语句:int a=010,b=0 x10,c=10;printf(“%d,%d,%d”,a,b,c);则输出结果是()A、8,10,10 B、10,10,10 C、8,8,10D、8,16,10,D,2.3.2 整型变量 1、整型数据在内存中的存放形式 数据在内存中是以二进制形式存放的。,2、整型变量的分类,2.3 整型数据,整型变量有三种类型整型变量:,(1)整型变量,以int 表示。,(2)短整型变量,以short int 表示。,(3)长整型变量,以long int 表示。,有符号基本整型 signedint无符号基本整型 unsigned int,有符号短整型 signed short int无符号短整型 unsigned short int,有符号长整型 signed long int无符号长整型 unsigned long int,字节数 最小取值范围,4-231(231-1)4 0(232-1),2-215(215-1)2 0(216-1),4 231(231-1)4 0(232-1),3、整型变量的定义,2.3 整型数据,定义变量a、b为整型变量,int a,b;,定义变量c、d为无符号短整型变量,unsigned short c,d;,定义变量e、f为长整型变量,long e,f;,对变量的定义,一般是放在一个函数的开头部分的声明部分(也可以放在函数中某一分程序内,但作用域只限它所在的分程序)。,例:#include main()short int a;/*unsigned*/a=32768;printf(a=%dn,a);,2.3.3 整型常量的类型(1)一个整数,如果其值在-32768(-215)+32767(215-1)范围内,认为它是short型,可以赋给short型int型和long int型类型。(2)一个整数,如果其值超过了上述范围,而在-2147482648(-231)+2147483647(231-1)范围内,认为它是整型或者长整型,可以将它赋给int型或long int型类型变量。(3)常量无unsigned型。(4)在一个整型常量后面加一个字母l或L,则认为是long int型常量,加u或者U表示无符号。例:358000L 358u 235Lu,2.3 整型数据,2.4.1 实型常量的表示方法1、实数又称浮点数。2、实数的表示形式,2.4 实型数据,(1)十进制小数形式。,它由数字和小数点组成(注意必须有小数点)。如:.123、3.14、0.0,(2)指数形式,如:123e3或123E3都代表123103。但注意:字母e(或E)之前必须有数字,且e后面的指数必须为整数。,2.4.2 实型变量,1、实型数据在内存中的存放形式,一个实型数据一般在内存中占4个字节(32位)。,实型数据是按照指数形式存储的。,2、实型变量的分类,3、实型变量的定义,指定x、y为单精度实数,float x,y;,指定z为双精度实数,double z;,指定t为长双精度实数,long double t;,2.5.1 字符常量一、字符常量的种类,2.5 字符型数据,1、C的字符常量是用单引号(即撇号)括起来的一个字符。如:a,G;,2、C允许用一种特殊形式的字符常量,就是以一个“”开头的字符序列,称为转义字符。,转义字符及其表作用,2.5.2 字符变量一、作用二、字符变量的定义2.5.3 字符数据在内存中的存储形式及其作用,字符型变量用来存放字符常量,注意只能放一个字符。,定义c1和c2为字符型变量,char c1,c2;,1、字符数据在内存中的存储形式,在内存中以相应的ASCII码存放。一个字符型数据在内存中占1个字节。,2、字符数据的使用方法,#includemain()char c1,c2;c1=a;c2=b;printf(%c%cn,c1,c2);printf(%d%dn,c1,c2);,结果:a b 97 98,结论:,1、字符型数据和整型数据是通用的。,2、应注意字符数据只占一个字节,它只能存放0255范围的整数。,3、小写字母的ASCII码值比其大写的ASCII值大32.,#includemain()char c1,c2;c1=a-32;c2=b-32;printf(%c%cn,c1,c2);printf(%d%dn,c1,c2);,A B65 66,2.5.4 字符串常量,一、字符串常量的表示,字符串常量是一对双引号括起来的字符序列。如:“CHINA”、”How are you”,二、字符常量与字符串常量的区别,C语言规定以字符0作为字符串结束标志。,变量赋初值的方法,2.6 变量赋初值,1、在定义变量的同时使变量初始化,int a=3;,float f=3.56;,char c=a;,2、可以使被定义的变量的一部分赋初值。,int a,b,c=5;,3、对几个变量赋予同一个初值。,int a,b,c;a=b=c=3;(对),int a=b=c=3;(错),double float 高 long unsigned 低 int char、short,2.7 各类数值型数据间的混合运算,1、横向向左的箭头表示必定的转换。,2、纵向的箭头表示当运算对象为不同类型时转换的方向。注意箭头方向只表示数据类型级别的高低,由低向高转换。,3、上述的类型转换是由系统自动进行的。,例:4+23L-5.1 unsigned int L 4L+23L-5.1 27L-5.1 float L double 21.900000,2.8.1 C运算符简介C运算符可以分为13类,本章只介绍算术运算符和赋值运算符。2.8.2 算术运算符和算术表达式,2.8 算术运算符和算术表达式,1、基本的算术运算符,+(加法运算符。如3+5),(减法运算符。如35),*(乘法运算符。如3*5),/(除法运算符。如5/3),除法运算符两边的运算量为整数,其结果为整数;如果有一个为实型数据,其值为实型数据。,%(模运算符,或称求余运算符),%两侧均应为整型数据,如18%4的值为2。,提问:1、表达式3.6-5/2+1.2+5%2的值是()。,3.800000,分析下面程序运行后输出结果是什么?#include void main()int x,a=3;float y;x=100-50/5*8;printf(1)x=%dn,x);x=25/8*8;printf(2)x=%dn,x);x=8*25/8;printf(3)x=%dn,x);x=-a+4*5-6;printf(4)x=%dn,x);x=(7+6)%a/6*5;printf(5)x=%dn,x);y=25.0/8.0*8;printf(6)y=%fn,y);,下列程序的输出结果是()。#includemain()char c1,c2;c1=a+6-0;c2=a+3-0;printf(%c,%cn,c1,c2);,2、算术表达式和运算符的优先级与结合性,(1)C运算表达式,(2)运算符的优先级与结合性,左结合性:运算符的结合方向为“从左至右”进行(a+b)。,右结合性:运算符的结合方向为“从右至左”进行(a+b+)。,3、强制类型的转换运算符(1)一般形式,(类型名)(表达式),(double)a,将a转换成double类型,(int)(x+y),将x+y的值转换成int类型,(float)(5%3),将5%3的值转换成float类型,(int)x+y,将x转换成整型,然后与y相加,说明:在强制类型转换时得到一个所需类型的中间变量,原来变量的类型未发生变化。,4、自增、自减运算符(1)自增、自减运算符的作用,是使变量的值增1或减1,如,+i,i,在使用i 之前,先使i的值加(减)1;,i+,i,在使用i 之后,使i的值加(减)1;,例:如果i的原值等于3,执行下面的赋值语句:,j=+i;,i的值先变成4,再赋给j,j的值为4,j=i+;,先将i的值3赋给j,j的值为3,然后i变成4,注意:,(1)自增运算符(+)和自减运算符(),只能用于变量,而不能用于常量或表达式。,(2)+和的结合方向是“自右至左”。,例:,#includevoid main()int a,x;a=10;x=+a;printf(a=%d,x=%dn,a,x);,#includevoid main()int a,x;a=10;x=a+;printf(a=%d,x=%dn,a,x);,结果:,a=11,x=11,a=11,x=10,()、+、-、*、%、+、-,单目(右结合),双目,同级,同级,同级,高,低,1、赋值运算符(1)符号(2)作用,2.9 赋值运算符和赋值表达式,赋值符号“=”就是赋值运算符。,是将一个数据赋给一个变量。,如:a=3是一个赋值表达式,是把常量3赋给变量a。,(3)注意事项,结果的类型由左边变量的类型决定,如果右边值的类型与左边变量的类型不一致,就把右边值的类型转换成左边变量的类型。,2、类型转换(1)、系统自动转换 1)、整型与实型 整型 实型 2)、长整形与短整型 短整型 长整形 3)、有符号与无符号 有符号型 无符号型(2)、强制转换 形式:(类型名)(表达式)例:printf(“%dn”,(int)3.325);3 printf(%fn,(double)(10%3);1.000000,2.9 赋值运算符和赋值表达式,3、复合的赋值运算符(1),复合赋值运算符的构成及种类,+=、=、*=、/=、%=、=、=、&=、=、|=,(2)复合赋值运算符的作用,一、是为了简化程序,使程序精练。,二、是为了提高编译效率。,4、赋值表达式,2.9 赋值运算符和赋值表达式,赋值表达式的使用,a=b=5,a=5+(c=6),a=(b=4)+(c=6),a+=a-=a*a,printf(“%d”,a=b);,1、逗号运算符2、逗号表达式的一般形式:3、求解过程4、作用,2.10 逗号运算符和逗号表达式,用逗号将两个表达式连接起来,称为逗号表达式,又称为“顺序求值运算符”。如:3+10,7+2,表达式1,表达式2,先求解表达式1,再求解表达式2。整个逗号表达式的值是表达式2的值。,表达式的值为9,逗号表达式常用于循环语句和for语句。,求逗号表达式的值。i=3,i+,+i,i+5,10,#includevoid main()int i;printf(%dn,(i=3,i+,+i,i+5);,#includevoid main()int a,i;i=(a=3,a+,-a,a+4,a+5,+a);printf(i=%d,a=%dn,i,a);,i=4,a=4,2、分析下面程序的运行结果,体会复合运算符和自增运算符的功能。#includemain()int a,b,c;a=5;a*=10%4;printf(1)a=%dn,a);a*=b=c=6;printf(2)a=%dn,a);a=b=1;c=a+-1;printf(3)a=%d,b=%d,c=%dn,a,b,c);c=a+*+b;printf(4)a=%d,b=%d,c=%dn,a,b,c);,课 堂 练 习,(1)a=10,(2)a=60,(3)a=2*b=1*c=0,(4)a=3*b=2*c=4,请分析下面的程序的输出结果。main()double x=3.14;int i;i=(int)x%3;printf(x=%f,i=%dn,x,i);,程序的输出结果是:x=3.140000,i=0,#include stdio.hvoid main()char c;int i=0 x3241;printf(i=%cn,i);c=i;printf(c=%dn,c);printf(i=%dn,i);,运行结果i=Ac=65i=12865,2.11 关系运算符,所谓关系运算,实际上就是比较两个数值的大小。那么,比较两个数值的大小的运算符就是关系运算符。关系运算符有六个、=、=、=、!=。由关系运算符连接起来的表达式就是关系表达式。关系表达式的解应为真或假,C语言用整数 1表示真,整数0表示假。,初学者经常会混淆关系运算符“=”和赋值运算符“=”,因此要注意区分这两个运算符。例#include stdio.hvoid main()int x,y,z1,z2;x=2;y=2;z1=(x=y);z2=(x=y);printf(%d,%dn,z1,z2);,六个关系运算符中的“!=”和“=”的优先级小于其余四个运算符。关系运算符的优先级小于算术运算符,大于赋值运算符。关系运算符的结合性均为自左至右。当多种运算符在一个表达式中同时使用时,要注意运算符的优先级,防止记错运算符优先级的最好方法是加圆括号。,2.12 逻辑运算符,如果将“与、或、非”运算应用于逻辑值(逻辑真和逻辑假)则称为逻辑运算。C语言中的逻辑运算符有三个:逻辑与&、逻辑或|和逻辑非!其中逻辑与和逻辑或是双目运算符,而逻辑非是单目运算符。,逻辑运算的规则与二进制的位逻辑是相似的。逻辑运算的规则下表:,C语言系统对任何非0值都认定为是逻辑真,而将0认定为逻辑假。逻辑运算符经常与关系运算符一起使用。将下列表达式:10 x100写成C语言表达式,(x=10)&(x=100),逻辑运算符的优先级!&|高 低!算术运算符 关系运算符 逻辑运算符 计算表达式79-!0的值,2.13 位运算符,&|按位取反 左移 右移 按位与 按位或 按位异或 操作数在实现位操作时按二进制进行运算.一般为无符号型整数。,按位与-&按位与的运算规则是:0&0=0 0&1=0 1&0=0 1&1=1,有0得0无0得1,按位或-|按位或的运算规则是:0|0=0 0|1=1 1|0=1 1|1=1,有1得1无1得0,按位异或按位或的运算规则是:0 0=0 0 1=1 1 0=1 1 1=0,相同得0不同得1,按位取反 按位取反的规则是:0=1 1=0,#includemain()unsigned short a;a=37;printf(%u n,a);,65498,移位运算符 左移 双目运算符,运算符右边的表达式表示移位的位数。x=x2 表示把x进行左移以后赋值给x,左移可以扩大原数的倍数,左移位扩大倍,左移位扩大倍,。右移可以缩小原数的倍数。,51,10=5*21,52,20=5*22,51,2=5/2,求字节数运算符 sizeof是一个比较特殊的单目运算符,也是一个非常有用的运算符,经常用于动态分配空间。其语法格式为:sizeof(表达式)表达式可以是变量名、常量、以及数据类型名。sizeof(int)的结果是4,2.14 其它运算符,作业p41-2、5、6、7上机指南:一、2、5、10、14 二、1、5、6、7 三、110 四、1,

    注意事项

    本文(修改第二章数据与运算.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开