c语言讲义第二章课件

PPT
  • 阅读 29 次
  • 下载 0 次
  • 页数 31 页
  • 大小 337.000 KB
  • 2022-11-13 上传
  • 收藏
  • 违规举报
  • © 版权认领
下载文档25.00 元 加入VIP免费下载
此文档由【小橙橙】提供上传,收益归文档提供者,本网站只提供存储服务。若此文档侵犯了您的版权,欢迎进行违规举报版权认领
c语言讲义第二章课件
可在后台配置第一页与第二页中间广告代码
c语言讲义第二章课件
可在后台配置第二页与第三页中间广告代码
c语言讲义第二章课件
可在后台配置第三页与第四页中间广告代码
c语言讲义第二章课件
c语言讲义第二章课件
还剩10页未读,继续阅读
【这是免费文档,您可以免费阅读】
/ 31
  • 收藏
  • 违规举报
  • © 版权认领
下载文档25.00 元 加入VIP免费下载
文本内容

【文档说明】c语言讲义第二章课件.ppt,共(31)页,337.000 KB,由小橙橙上传

转载请保留链接:https://www.ichengzhen.cn/view-7153.html

以下为本文档部分文字说明:

第二章数据类型、运算符和表达式C中的数据类型算术运算符和算术表达式赋值运算符和赋值表达式逗号运算符及逗号表达式逻辑运算符和逻辑表达式本章提要:§1C中的数据类型常量:在程序运行过程中值不改变的量。如4、3、‘a‟变量:

值可以改变的量称为变量。每一个变量应对应一个名字,即标识符。C规定:标识符只能由字母、数字和下划线三种字符组成,且第一个字符不能是数字。一、常量与变量char字符型:占用一个字节,只能存放一个字符int整型:占用两个字节,数的范围–32768~32767float单精度浮点数:4byte

double双精度浮点数:8byte二、C中的基本数据类型C中只有以下四种基本的数据类型字符常量:用单引号引起来的字符。如'a'、'z'、'S'等注意:在C中,'a'与"a"是不同的除了这种形式的字符常量外,C还有一种特殊形式的字符常量:以反斜杠‘\‟为开头的字符序列,称之为“转义字符

”。如前面接触的'\n'。说明:其它的转义字符请参见教材1、字符型字符变量:用char关健字定义的变量。如:charc1,c2;说明:在字符变量中,只能存放一个字符,不能这样对字符变量赋值:c1=„ab‟;或c1=”a”而只能这样赋

值:c1=‘a’;字符串:用双引号引起来的字符如:“asd”、“hello”1、字符型字符在内存中的存储形式:字符在内存中是以一个字节的空间来存放这个字符的ASCII码的,即,字符在内存中也是以数的形式存在的。因此,可以对字符进行加、减等算术运算。例:验证字符在

内存中的存储形式1、字符型#include<stdio.h>voidmain(){charc1,c2;c1=„a‟;c2=„d‟;printf(“%c,%d\n”,c1,c1);printf(“%c,%d\n”,c2,c2);}1、字符型整常量:一般的十进制

整数、以“0”开头的8进制整数,以“0X”开头的16进制整数。整型变量:一般的整型变量为基本型,用int关健字来定义。一个int型变量在内存中占两个字节。2、整型除基本型外,在C中还可以用以下几种修饰符对int型数据进行

修饰,以扩大int型数据的范围:long长整型4byteshort短整型2byteunsinged无符号型2byte2、整型float:单精度浮点数,在内存中占4个bytedouble:双精度浮点数,在内存中占8个byte3、实型三、各类数据间的混合运算通过前面

的讲解,我们已经知道:字符型与整型在C中是通用的。而整型与实型之间又都是数据型,因此,在C中,整型、实型和字符型数据间可以进行混合运算。在混合运算时不同的数据先转换成同一类型,再进行运算。转换规则如下图:三、各类数据间的混合运算高doublefloatlongunsigned低intchar

,short注:纵向的箭头方向只表示级别高低,并不表示必须一级级按此转换。三、各类数据间的混合运算例:10+„a‟+i*f-d/e(i为int型;f为float;;d为double;e为float。1

)10+„a‟„a‟97==>10+97(int)2)i*fifloat==>(float)3)int+floatintfloat==>(float)4)d/eedouble==>(double)5)float+doublefloatdouble==>(double)结论:运算的

结果为混合运算的数据类型中最高的类型。§2算术运算符和算术表达式+、-、*、/、%%求余运算符。其结果为两数相除后所得余数,如7%3=1。注:本运算符要求两侧均为int型数据。1、基本的算术运算符优先级:如a+b*c结合性:当一个运算

对象两侧的运算符的优先级别相同时,C规定了各种运算符的结合方向,即“结合性”。如:a+b-c;变量b两侧的运算符优先级别相同,此时用到“结合性”的概念。2、算术运算符的优先级和结合性一般形式:(类型名)

(表达式)功能:把一个表达式(变量)转换成所需类型。例:若有x=3.8;则(int)x的值为3注1:类型名应用()括起。注2:强制类型转换只是生成一个中间数据,而原有数据类型、值均不发生变化。3、强制类型转换运算符例:强制类型转换#include<stdio.h>main(){fl

oatx=3.7,y=4.4,z;z=(int)(x+y);printf(“x=%f,y=%f,z=%d\n”,x,y,z);}3、强制类型转换运算符自增运算符为++,自减为--,作用分别是使变量的值加1或减1。具体使用时有以下两种形式:++i、--i(使用i之前,先使i的值加1、减

1)i++、i--(先将i的值取出来使用,用后再使i的值加1、减1)参看下例:若有定义inti=10,j;执行j=i++;//则j=10;i=11;=============================执行j=++i;//则j=11;i=11;4、自增、自减运算符++,-

-只能用于变量而不能用于常量或表达式。如5++,(a+b)++都是错误的。++、--的结合方向为“自右向左”。若有语句:-i++;则相当于-(i++);即对于语句:printf(“%d”,-i++);输出

结果为:-3而此时i的值为4;对于i=3,j=(i++)+(i++),j的值为6。4、自增、自减运算符在使用++、--运算符时,应注意以下三点:voidmain(){inti=3,j,k;k=(i++)+

(i++)+(i++);printf(“k=%d,i=%d”,k,i);i=3;k=(++i)+(++i);printf(“k=%d,i=%d”,k,i);i=3;k=(++i)+(i++);printf(“k=%d,i=%d”,k,i)

;i=3;j=10;k=i+++j;printf(“k=%d,i=%d,j=%d”,k,i,j);}4、自增、自减运算符§3赋值运算符和赋值表达式赋值时的类型转换:字符整型实型(对于占内存单元多的数据类

型赋给少的时,会截取;少的给多的时,不变)复合的赋值运算符:在”=”号之前加上其它运算符,就可构成复合运算符。如在”=”前加一个’+”就构成了复合运算符“+=”。赋值运算符:“=”,其作用是将一个数据赋给一个变量§3赋值运算符和赋值表达式对于复合的赋值运算符‘+=‟,可以这样理解:变量+=表

达式变量=变量+(表达式)例如:a+=3;a=a+3;y+=y*8y=y+(y*8)其它的复合的赋值运算符,其理解方式与‘+=‟相类似:如a*=a+3?请考虑:若a=3,则a+=a*=a/=a的值§3赋值运算符和赋值表达式赋值表达式:由赋值运算符将一个变量和一个表达或连

接起来的式子。如“a=5”注意:赋值表达式不同于赋值语句。赋值语句的后面有分号而赋值表达式没有。也就是说,给一个赋值表达式未尾加上分号后,就构成了赋值语句。C中规定:赋值表达式是有值的,它的值就是被赋值变量的值。即表达式“a=5”的值为5。由此又可赋值:b=(a=5);又

如:a=(b=4)+(c=5);§3赋值运算符和赋值表达式1.a-=a+4a=a-(a+4)a=-42.a*=aa=a*aa=163.a+=aa=a+aa=32现在我们来看刚才的那个例子:若a=3,则表达式a+=a*=a-=a+4的值?§4逗号

运算符及逗号表达式逗号表达式的求解过程是:先求解表达式1的值,再求解表达式2的值,整个逗号表达式的值是表达式2的值。如:若a=3;则表达式a*=a+4,a*4的值为28*4用‘,’将两个表达式连接起来,称为逗号表达式。如:

6+8,3+4。逗号表达式的一般形式:表达式1,表达式2。§4逗号运算符及逗号表达式逗号表达式可扩展为表达式1、表达式2、……表达式n它的值为表达式n的值。逗号运算符是所有运算符中级别最低的。因此,以下两个

表达式:1)x=(a=3,6*3)2)x=a=3,6*3其意义是不同的。§5关系运算符和关系表达式所谓的“关系运算”实际上就是比较运算,将两个值进行比较,判断比较的结果是否符合给定的条件。如“5>3”

即为一个关系表达式。在C中,关系运算符有>,>=,<,<=,==,!=。注意:①C中的等于是“==”号!②表达式5>3的值为1,5<3的值为0优先次序:>,>=.<,<=的优先级别相同,高§5关系运算符和关系表达式关系运算符的优先级低于算术运算符而高于赋值运

算符.即:算术运算符>关系运算符>赋值运算符使用关系运算符应注意的问题:1)a>b>c2)f=a>b>c(设a=5,b=4,c=3)§6逻辑运算符和逻辑表达式C中的逻辑运算符为&&(与),||(或),!

(非)。逻辑表达式:用逻辑运算符将关系表达式或逻辑量连接起来,就是逻辑表达式在其它的高级语言中,逻辑运算符的两边要求是逻辑值(如Fox中的.T.和.F.),但C中没有逻辑值。系统在进行逻辑运算时,对“0”处理为假,而“非0”即为“真”,即所有的非零数值都作为真处理。§6逻辑运算符和逻辑表达

式因此,以下语句的执行结果可能与编程者意图不符:inta=5;if(a=4)printf(“a=4”);elseprintf(“a!=4”);对于逻辑运算的结果,不是0,就是1,而参加逻辑运算的运算对象则可以是任何数值。如:5>3&&2||8<4-!0§

6逻辑运算符和逻辑表达式在逻辑表达式的求解过程中,并非所有的逻辑运算符都被执行,只是在必须执行下一个逻辑运算符才能求出表达式的值时,才执行该运算符。如下表达式(设a=1,b=2,c=3,d=4)(m=a>b)&&

(n=c>d)则m=0,而后面的表达式(n=c>d)不被执行。n的值为?

小橙橙
小橙橙
文档分享,欢迎浏览!
  • 文档 25747
  • 被下载 7
  • 被收藏 0
相关资源
广告代码123
若发现您的权益受到侵害,请立即联系客服,我们会尽快为您处理。侵权客服QQ:395972555 (支持时间:9:00-21:00) 公众号
Powered by 太赞文库
×
确认删除?