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

    C语言从入门到精通,非常不错的课件第2章.ppt

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

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

    C语言从入门到精通,非常不错的课件第2章.ppt

    第 2 章 C语言的基本数据类型与表达式,2.1 C语言的基本数据类型,2.2 常量和变量,2.3 运算符与表达式,2.4 数据类型转换,返回,C语言程序设计教程,字符类型(char)整型(short,int,long,unsigned)单精度型(float)实型(浮点型)双精度型(double)枚举类型(enum)数组类型()构造类型 结构体类型(struct)共用体类型(union)指针类型(*)空类型(void),2.1 C语言的基本数据类型,一、数据类型概述,第2章 C语言的基本数据类型与表达式,下一页,*八进制的数码范围为07;018*十六进制的数码除了数字09外,还使用英文字母a f(或A F)表示1015。如:0 x1e,二、整型,第2章 C语言的基本数据类型与表达式,下一页,1、常量:(1)十进制形式:与数学上的整数表示相同;例如:12,-100,0(2)八进制形式:在数码前加数字0;例如:012=1*81+2*80=10(十进制)(3)十六进制形式:在数码前加0X(数字0和字母X)。例如:0 x12=1*161+2*160=18(十进制),注意,2、分类:根据数据所占的二进制位数分为:int、short、long;同样存储长度的数据又分unsigned、signed;故可组合出六种类型。3、值域:由机器中数据的存储长度决定。如Turbo C中,有 short(2字节)int(2字节)long(4字节),第2章 C语言的基本数据类型与表达式,下一页,Turbo C所支持的整型数据请,点击,1、常量:(1)十进制小数形式:由数字和小数点组成;例如:3.4,4.,.3。(2)指数形式:“十进制小数”+“e(或E)”+“十进制数整数”。例如:12.5e-6 表示12.510-6。,注意,三、实型,第2章 C语言的基本数据类型与表达式,下一页,2、分类:关键字 字节数 取值范围 精度(位)float 4 3.410-38 3.41038 7 double 8 1.710-308 1.710308 15,小数点不能单独出现;0.0.e或E的两边必须有数,且其后面必须为整数;如:6E0.2 e5,1、常量:(1)用单引号括起来的一个字符;如:A、1、?等。(2)用单引号括起来的由反斜杠()引导的转义字符。字符形式 功能 n 换行 t 横向跳格 b 退格 r 回车 反斜杠字符 单引号字符 ddd 8进制数表示的ASCII码对应的字符 xhh 16进制数表示的ASCII码对应的字符,四、字符类型,第2章 C语言的基本数据类型与表达式,下一页,2、分类:char 和 unsigned char;3、值域:每个字符型数据在内存中占一个字节;包括ASCII字符表中的所有字符(可显示字符和非显示字符)。4、字符串:是用一对双引号括起来的字符序列。如:“SHANGHAI”,“AbcdeFGHijk”,“How are you”。,注意,a与“a”的区别。,第2章 C语言的基本数据类型与表达式,例如:字符A的ASCII码为:65D(十进制)=41H(十六进制)=101Q(八进制)字符A可以表示为A、x41、101。,返回,一、常量与符号常量 常量是指在程序运行中,其数值不能被改变的量。常量又可分为直接常量和符号常量。,2.2 常量与变量,第2章 C语言的基本数据类型与表达式,下一页,120、-100、0;0120、072;0 xFFFF、0 x1e、0X28AF,0XED4;120L,200L;长整型常量 3.14、-3.1、5.12E-6;a、#、n、101;099、12f、0 xg、48EA;019.5、1e-08;实型常量只能用十进制形式表示 2.1E10.2、E-6、6.4E+4.8、E9;changsha、+?ab;、p、ab;,1、直接常量:是在程序中直接引用的数据。,请判断这些常量正确与否:,第2章 C语言的基本数据类型与表达式,下一页,2、符号常量 是用标识符来表示一个数据;在程序不能给它赋值。定义形式:#define 标识符 常量数据 例如:#define PI 3.14159 在程序预处理时,凡是出现标识符PI的地方都将用数据3.14159来替换。如:2*2.3*PI 就等价于 2*2.3*3.14159。,二、变量 变量是指以标识符为名字,其值可以改变的量。变量代表计算机内存中的某一存储空间,该存储空间中存放的数据就是变量的值。在同一程序块中,变量不能被重复定义。使用变量时必须“先定义,后使用”。,第2章 C语言的基本数据类型与表达式,下一页,1、定义形式:类型标识符:变量名1,变量名2,变量名3.;,自己设定,满足标识符的规定。,如:int,float,char,;不可省,2、变量初始化 在说明变量的同时给变量一个初始值。,例如,int a=5,b=3;int a=b=c=3;int a,b,c;a=b=c=3;,第2章 C语言的基本数据类型与表达式,下一页,例如:int a,b,c;float x,y;char c1,c2;或 int c1,c2;,main()int x,y,z,w;/*定义x,y,z,w为整型变量*/unsigned int k;/*定义k为无符号整型变量*/x=10;y=-20;k=30;z=x+k;w=y+k;printf(“x+k=%d,y+k=%dn”,z,w);,例2-1:,程序运行结果为:x+k=40,y+k=10,第2章 C语言的基本数据类型与表达式,下一页,3、局部变量 C语言程序是由函数组成的,且有且只能有一个main函数。变量定义可以出现在函数内,亦可出现在函数外或者是函数的参数中。,按照变量定义语句出现的位置,可以分为:,局部变量:在函数内定义;只在该函数中才能使用。全局变量:在函数外定义;从它被定义的位置起,在 之后的所有函数中有效。形式参数:定义为函数的参数;只在该函数中才能 使用。,第2章 C语言的基本数据类型与表达式,下一页,在函数内部说明的变量或者在复合语句中定义的变量称为局部变量。其作用范围是其所在的函数或复合语句。,第2章 C语言的基本数据类型与表达式,下一页,void float(int a)int b,c;Mvoid f2(int x,int y)int i,j;M,又称全程变量或外部变量,在函数外部说明。其作用范围从它被定义的位置起,在之后的程序段中都是起作用的。,4、全局变量,第2章 C语言的基本数据类型与表达式,下一页,如果在全局变量定义之前的函数想引用该外部变量,则应该在该函数中用关键字extern作“外部变量说明”。,第2章 C语言的基本数据类型与表达式,下一页,int a,b;void swap()int t;t=a;a=b;b=t;printf(“swap:a=%d,b=%dn”,a,b);main()printf(“Enter a,b:”);scanf(“%d,%d”,Enter a,b:5,3 swap:a=3,b=5main:a=3,b=5,运行结果,第2章 C语言的基本数据类型与表达式,下一页,例如,int a,b;void swap()int t;t=a;a=b;b=t;printf(“swap:a=%d,b=%dn”,a,b);main()printf(“Enter a,b:”);scanf(“%d,%d”,int a,b;,程序在编译时,屏幕将提示有错误:Undefine symbol a Undefine symbol b,第2章 C语言的基本数据类型与表达式,下一页,例如,运行结果,int a,b;void swap()int t;t=a;a=b;b=t;printf(“swap:a=%d,b=%dn”,a,b);main()printf(“Enter a,b:”);scanf(“%d,%d”,int a=5,b=3;,Enter a,b:5,3 swap:a=3,b=5main:a=5,b=3,第2章 C语言的基本数据类型与表达式,返回,int a,b;,例如,运行结果,按操作功能运算符大致可分为算术运算符、关系运算符、逻辑运算符、按位运算符以及其它运算符如赋值运算符、条件运算符、逗号运算符等。表达式是由操作数和运算符组成的序列。,2.3 运算符与表达式,算术运算符+-*/%关系运算符=!=逻辑运算符!&位运算符|&赋值运算符=条件运算符?:逗号运算符,指针运算符*和&求字节数运算符 sizeof强制类型转换运算符分量运算符 下标运算符,第2章 C语言的基本数据类型与表达式,下一页,1、运算符+(加):3+4、+3-(减):3-5、-5*(乘):3*5/(除):5/2的值为2;5.0/2的值为2.5;%(取余):5%3的值为2;-5%3的值为-2;5%(-3)的值为2;-5%(-3)的值为-2;12.3%3 若a能被b整除,则有:a%b=0,第2章 C语言的基本数据类型与表达式,下一页,一、算术运算符和算术表达式,2、算术表达式 用算术运算符和括符将操作数连接起来的式子。优先级:()*、/、%+、-结合性:从左至右;表达式的值:数值型(int、long、unsigned、double);,已知:float a=2.0;int b=6,c=3;求解:a*b/c-1.5+a+fabs(-5)=?,第2章 C语言的基本数据类型与表达式,下一页,例如,第2章 C语言的基本数据类型与表达式,下一页,解:,等价于 i=i+1;,j=i;i+;所以i的值为4,j的值为3.,i+;j=i;所以i的值为4,j的值为4.,例如:,(3)i=3;j=+i;,第2章 C语言的基本数据类型与表达式,下一页,3、自增与自减运算符+i,-i:使用之前使i的值增1(或减1);i+,i-:使用之后使i的值增1(或减1);,(1)i+;+i;,(2)i=3;j=i+;,结合性:自右至左。如:i=2;j=-i+;等价于:j=-(i+);即:j=-i;i+;“+”与”-“是同优先级 所以i的值为3,j的值为-2。,“+”或“-”自增与自减运算符的使用。如:设i=3,k=(i+)+(i+)+(i+),k=?如:设i=3,j=4,k=i+j,k=?,第2章 C语言的基本数据类型与表达式,下一页,注意,1、6种关系运算符:=!=2、关系表达式:用关系运算符将表达式连接起来的式子 优先级:(=)(=!=)结合性:自左至右;表达式的值:若为真,则结果为1;若为假,则结果为0。,35 的值为 0;32 的值为 0;3+(43)*4的值为 3;3+43*4 的值为 1;算术运算符优先级高于关系运算符,例如,二、关系运算符和关系表达式,第2章 C语言的基本数据类型与表达式,下一页,2、逻辑表达式:用逻辑运算符将表达式连接起来的式子 优先级:!&|结合性:自左至右;表达式的值:若为真,则结果为1;若为假,则结果为0。,三、逻辑运算符和逻辑表达式,第2章 C语言的基本数据类型与表达式,下一页,1、3种逻辑运算符:&|!逻辑量:可以是整型、实型、字符型和指针类型,0假 非0真;如:0,0.0,0,NULL都代表假。,int a=5;float b=3.5;!a(0)!(a 0)(0)(a 0)(1),例如,第2章 C语言的基本数据类型与表达式,下一页,第2章 C语言的基本数据类型与表达式,下一页,第2章 C语言的基本数据类型与表达式,下一页,注意,在逻辑表达式的求解中,并不是所有的逻辑运算符都被执行,只是在必须执行下一个逻辑运算符才能求出表达式的解时,才执行该运算符。,例如,(1)a=0;b=1;c=a+结果:a为0,b为0,c为0,d为1。,(1)n是小于m的偶数:nm&n%2=0(2)year是闰年:(能被4整除但不能被100整除或能被400整除)year%4=0&year%100!=0|year%400=0,第2章 C语言的基本数据类型与表达式,下一页,例如:,逻辑表达式一般用于控制语句中的条件:,1、赋值运算符=2、赋值表达式:用赋值运算符将变量和表达式连接起来的式子 形式:=求值规则:将“=”右边表达式的值赋给左边的变量。优先级:!算术关系&和|赋值 结合性:自右至左;表达式的值:被赋值变量的值。,四、赋值运算符和赋值表达式,第2章 C语言的基本数据类型与表达式,下一页,例如,(1)x=(y=12)/4 y值为12,x值为3,表达式的值为3(2)x=y=12/4 y值为3,x值为3,表达式的值为3(3)x=(y=12/4)y值为3,x值为3,表达式的值为3(4)(x=y)=12/4,3、复合赋值运算符*=、/=、%=、+=、-=,=,&=、=、=,第2章 C语言的基本数据类型与表达式,下一页,(1)a+=b 相当于 a=a+b a*=b 相当于 a=a*b a*=b+c 相当于 a=a*(b+c)而不是 a=a*b+c(2)设a=12,计算表达式a+=a-=a*12和a+=a-=a*=12 的值,注意,复合运算符是一个运算符,但功能上,是两个运算符功能的组合。,例如:,1、条件运算符?和:,它们与三个操作数组组成三元运算。形式为:?:求值规则和表达式的值:真(非0),求解表达式2 求解表达式1 条件表达式的值 假(0),求解表达式3,四、其它运算符,第2章 C语言的基本数据类型与表达式,下一页,int max,a=5;b=3 max=ab?a:b max及赋值表达式的 值均为5;ab?a:b+1 条件表达式的值为4。,例如,-a=b+?a+:b+(a=a-1;)4=3(b=b+1;)?a+:b+a为4 b为4 0 4(b=b+1;)表达式值为4 b为5 a值为4,b值为5,条件表达式的值为4。优先级:逻辑条件赋值,又例如:,第2章 C语言的基本数据类型与表达式,下一页,2、逗号运算符:,形式:逗号表达式1,逗号表达式2,逗号表达式n 求值规则:从左至右依次计算各表达式的值;优先级:最低;结合性:自左至右;表达式的值:最后一个表达式的值。,第2章 C语言的基本数据类型与表达式,下一页,结合性:自右至左;y=x10?x/10:x0?x:-x;等价于:y=x10?x/10:(x0?x:-x);当x的值为15时,表达式的结果为:1 当x的值为5时,表达式的结果为:-5,第2章 C语言的基本数据类型与表达式,下一页,a b y 表达式 y=a=4,b=5,a+b;4 5 4 9 y=(a=4,b=5,a+b);4 5 9 9 y=(a=4,b=5),a+b;4 5 5 9 y=a=(4,b=5),a+b;5 5 5 10,例如,注意,C语言常用逗号作为分隔符,例如:int a=3,b=4,c=5;printf(“%d,%d,%d”,(a,b,c);printf(“%d,%d,%d”,a,(a,b,c),c);结果为3,5,5,作用:求得变量或某种数据类型所需的字节数。形式有两种:sizeof 变量名 sizeof(类型名)结果为整型数。,int a;float x;printf(“%d,%d”,sizeof a,sizeof x);printf(“%d,%d”,sizeof(int),sizeof(float);以上两个printf语句结果均为2,4。,3、求字节运算符:sizeof,第2章 C语言的基本数据类型与表达式,例如,返回,C语言允许整型、实型、字符型数据进行混合运 算。有3种转换方式:自动转换、赋值转换和强制转换。,2.4 数据类型转换,第2章 C语言的基本数据类型与表达式,一、类型自动转换,下一页,二、赋值转换 在赋值时将赋值符右边值的类型转换成与其左边变量类型一致的类型。有下列几种情况:(1)实型 整型(字符型):去掉小数部分;,例如,char c=68.5;printf(“%c”,c);,int x=2;float y=1.6;char c=A;则:c+x*y=c+x*y 65(int)+2(int)*1.6(double)=68.2(double),第2章 C语言的基本数据类型与表达式,下一页,(3)对char、int、short、long、unsigned型数据:赋值符右边数据(a位)赋值符左边的变量(b位)若 a=b 原样照赋;ab 截断高a-b位,送低b 位;有符号数据 有符号变量:符号扩展;其他情况:高a-b位全补0。符号扩展:符号位为0,剩余的高位补0;符号位为1,剩余的高位补1。,第2章 C语言的基本数据类型与表达式,下一页,第2章 C语言的基本数据类型与表达式,返回,三、强制类型转换形式:(类型名)表达式强制类型转换时,得到所需类型的中间变量,原来变量的类 型不会改变。,例如,int a=2,b=5;float x=4.4;则有:表达式 结果 b/a 2(float)b/a 2.5(float)(b/a)2.0(int)x%a+x 4.4(int)x%(a+x),

    注意事项

    本文(C语言从入门到精通,非常不错的课件第2章.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

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




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开