C语言-第3章-2类型、运算符与表达式课件

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

【文档说明】C语言-第3章-2类型、运算符与表达式课件.ppt,共(63)页,1.084 MB,由小橙橙上传

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

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

第三章数据类型、运算符和表达式2主要内容1.预备知识2.常量和变量的概念3.各种数据类型的常量及变量4.变量赋初值5.不同类型数据之间的混合运算6.常用运算符和表达式7.输入函数与输出函数33.4.1变量和内存的概念变量:程序运行过程中其值可以

改变的量。系统为程序中的每一个变量开辟存储单元。变量名:字母开头,后跟字母、数字和下划线组成。C语言中的关键字不能作为变量名。43.4.1变量和内存的概念#include<stdio.h>#definePI3.1415926v

oidmain(){floatr,s,ar;scanf(“%f”,&r);s=2*PI*r;ar=PI*r*r;printf("s=%7.2f,",s);printf("ar=%7.2f“,ar);}说明:变量必须先定义后使用;

变量中存储的只能是一个数据,往变量中存放数据的操作称为赋值。变量改变的是其值,而不是变量名。53.4.2变量赋初值变量定义inta,b,c;floatw;doublez;charc1,c2;类型标识符变量名1[=常量1],变量名2[=常量2],„;/*指定a,b,c为整型变量*/

/*指定w为单精度实型变量*//*指定z为双精度实型变量*//*指定c1,c2为字符型变量*/63.4.2变量定义和赋初值变量赋初值inti=0;inta=5,b=5,c=5;floatep=0.001;charc='a';/*指定i为整型变量,初值为0*//

*指定a,b,c的初值为5*//*指定ep的初值为0.001*//*指定c的初值为’a‟*/7注意:变量的“名”和变量的“值”不同,变量的“名”是该变量所代表的存储单元的标志,而变量的“值”是指存储单元中的内容。如:inta;a=5;a=10;?51

089101112主要内容1.预备知识2.常量和变量的概念3.各种数据类型的常量及变量4.变量赋初值5.不同类型数据之间的混合运算6.常用运算符和表达式7.输入函数与输出函数133.6运算符和表达式C运算符算

术运算符:+-*/%++--关系运算符:<<===>>=!=逻辑运算符:(!&&||位运算符:<<>>~|^&赋值运算符:=及其扩展条件运算符:?:逗号运算符:,指针运算符:*&求字节数:sizeof强制类型转换:(类型)分量运算符:.->下标运算符:

[]其它:()-14学习运算符应注意:运算符功能与运算量关系要求运算量个数要求运算量类型运算符优先级别结合方向结果的类型15计算机实现操作有两种方式:运算:数学中所规定的各种基本运算,由运算符来实现。函数:对于复杂的运算,

需要编制子函数来实现。标准函数(库函数);用户自定义函数;16运算符与表达式1.算术运算符和算术表达式2.赋值运算符和赋值表达式17+-*/%加法运算或正号运算符减法运算或负号运算符乘法运算符除法运算符求余运算符,或称模运算符完成现实世界的算术运算(+、-、

×、÷)算术运算符18关于求余运算:求余运算A%B表示:求A除以B的余数求余运算要求%两侧都是整型数据。对于除法,如果参加运算的两个数中有一个数为实数,则结果是实数(实数除法)例:8%5的运算结果:38/5的运算结果:15.6/2:2.8000008.43/5:1.68600019算术表达式:算

术表达式:用算术运算符和括号将运算对象连接起来的式子称为算术表达式。运算符有优先级和结合性:•计算表达式的值时,按照优先级的高低依次计算;•如果运算符优先级相同,则按规定的结合方向进行。算术运算符的结合性从左到右20(1)求三个数的算术平均值代数表达式:ave=算术表达式:ave=(a+b+

c)/3(2)根据三角形三边计算三角形面积代数表达式:算术表达式:sqrt(s*(s-a)*(s-b)*(s-c))(3)根据半径计算圆的周长代数表达式:s=2πr算术表达式:s=2*3.14159*r3cba))()((csbsass算术表达式2

1练习:1.下列运算符的操作数不能是float型的运算符是()。A.*B.%C.――D./2.执行以下程序段,c的值是()。inta=1,b=2,c;c=a/b;A.0B.1/2C.0.5D.1答案:B答案:A22算术运算

符的优先级+、-(加减运算符)最低!*、/、%第二级!-(负号运算符)无括号时我最高!(、)(括号)最优先!23自增(++)和自减运算(--)•++运算符的作用:是使变量的值增1。•--运算符的作用:是使变量的值减1。原始值原始值+1++变量变量原始值原始值-

1--变量变量24自增(++)和自减运算(--)自增和自减运算只能应用于整型变量和指针型变量。++和--可以写在变量的左侧或右侧;而且其意义不同。•“++变量名”和“--变量名”:先做运算,后取值•“变量

名++”和“变量名--”:先取值,后做运算25自增(++)和自减运算(--)举例N=I++变量N010变量I变量N??变量IN=++I变量N010变量I变量N??变量I1110111126练习:已知i

=7j=i++;j=?i=?j=++i;j=?i=?788827若k和j为int型变量,运算表达式j=3;k=++j;j++;执行后,变量k的值为_____,变量j的值为______。45练习28关于自增和自减运算符的说明:1.自增和自减运算符的运算对象不能是常量或表达式,只能是单个变量。2.自

增和自减运算符的结合方向是“自右向左”。例:-i++等价于-(i++);*i++等价于*(i++);292、赋值运算符和赋值表达式1.赋值:在计算机程序中,要完成这样一种操作→将一个表达式的计算结果送到一个变量当中。2.简单的赋值运算符:=3.赋

值表达式:变量名=表达式4.赋值运算符的结合性:自右向左5.即:a=b=c相当于a=(b=c)30算术运算符与“=”结合在一起,形成复合的赋值运算符。复合的赋值运算符例:i+=2a%=3a*=b+5等价于

i=i+2等价于a=a%3等价于a=a*(b+5)31C运算符算术运算符:+-*/%++--关系运算符:<<===>>=!=逻辑运算符:(!&&||位运算符:<<>>~|^&赋值运算符:=及其扩展条件运算符

:?:逗号运算符:,指针运算符:*&求字节数:sizeof强制类型转换:(类型)分量运算符:.->下标运算符:[]其它:()-32主要内容1.预备知识2.常量和变量的概念3.各种数据类型的常量及变量4.变量赋初值5.不同类型数据

之间的混合运算6.常用运算符和表达式7.输入函数与输出函数333.5数据的混合运算1、自动转换•运算转换•赋值转换2、强制类型转换341、自动转换—运算转换在进行运算时,不同类型的数据要先自动转换成同一类型,然后进行运算。转换的规则按图所示。int←

char,short高低longunsigneddouble←float转换由编译系统自动完成。转换按数据长度增加的方向进行,即按“向高看齐”的原则提升“较低”类型,以保证不降低精度。35(1)实型赋予整

型,舍去小数部分。(2)整型赋予实型,数值不变,但将以浮点形式存放,即增加小数部分(小数部分的值为0)。(3)字符型赋予整型,由于字符型为一个字节,而整型为两个字节,因此将字符的ASCII码值放到整型变

量的低八位中,高八位为0。(4)整型赋予字符型,只把低八位赋予字符型变量。(5)double型赋予float型,丢失的部分按四舍五入向前进位。1、自动转换—赋值转换36注意:一个long型或double型数据给

一个int型或float型变量赋值时,可能会引起数值溢出。注意:如果赋值运算符两边的数据类型不相同,系统将进行类型转换,即把赋值号右边的类型换成左边的类型,如果右边表达式的数据类型长度比左边长时,将丢失一部分数据,这样会降低精度。1、自动转换—赋值转换37练习:已知:double

a;floatb;intc;chard;执行语句c=(d+b)*c-a;后,变量c的数据类型是()。A.doubleB.floatC.intD.char正确答案:C382、强制类型转换强制类型转换运算符,将一个类型的变量值强制转换为另一种类型。一般格式为:(类型标识符)表达式例:k=(in

t)((int)x+(float)i)(float)(x=85)39注意:对一个变量进行强制转换后,得到一个新的类型的数据,但原来变量的类型不变。例:x原为实型变量且值为2.6,在执行i=(int)x后得到一个整数2,并把它赋给整型变量i,但x仍为实型,值为2.6。2

、强制类型转换40练习:若有定义:floata=3.9,b=6.9;intc;执行语句c=a+(int)(a+b)%3/2;后,c的值为()。A.3B.3.9C.4D.4.4正确答案:A41主要内容1.预备知识2.常量和变量的概念3.各种数据类型

的常量及变量4.变量赋初值5.不同类型数据之间的混合运算6.常用运算符和表达式7.输入函数与输出函数423.7输入函数与输出函数输出—计算机向外部输出设备(显示器,打印机等)输出数据输入—从输入设备(键盘,鼠标,扫描仪等)向计算机输入数据在使用系统库函数时,要用预编译命令“#inc

lude”包含有关的头文件#include<stdio.h>/*标准输入输出库函数*/#include“stdio.h”/*标准输入输出库函数*/433.7.1格式输出函数printfprintf函数一般格式:printf(格式控制,输出表列)格式控制是由双引号括起来的字符串,包含三种信息

:1、格式说明:由“%”和格式字符组成,如%d,%f等。它的作用是将输出的数据按照指定的格式输出。2、普通字符:需要原样输出的字符。3、转义字符:用于控制输出。输出表列是一些要输出的数据。443.7.1格式输出函数printfprintf函数一般格式:printf

(格式控制,输出表列)普通字符输出表列printf(“sum=%d\n”,sum);格式说明转义字符printf("%d,%d\n",a,b);45格式说明项:由“%”与格式字符组成,其作用是将数据转换为指定的格式输出,按不同类型的数据有以下不同的格式字符:%d、%ld,按整型数据的实

际长度输出。%md、%mld,m为指定的输出字段的宽度,如数据的位数小于m,则左端补空;若数据位数大于m,则按实际长度输出。%c:用于输出一个字符。%f:用于以小数形式输出实数(包括单、双精度);%m.nf、%m.nlf,指定输出的数据共占m位,其中

包括n位小数,如数据的位数小于m,则左端补空;若数据位数大于m,按实际长度输出。小数位数被截断时按四舍五入输出。3.7.1格式输出函数printf46inta=-1,b=25,c=125;longx=356142;printf("%d,%5d\n",a,b);prin

tf("%5d,%2d\n",c,c);printf("%ld,%d\n",x,x);输出结果为:例:473.7.2格式输入函数scanfscanf函数一般格式:scanf(格式控制,地址表列)scanf函数的功能是按照指定的格式输入数据,可以输入任意类

型的多个数据。格式控制与printf函数含义相同,它由若干个格式说明构成,其作用是控制转换输入数据的类型。地址表列由若干个地址构成,它们可以是变量的地址,也可以是字符串的首地址。48如何分隔数据?用隐含的分隔符:在输入数据中用空格或换行符分隔数据。scanf("%d%d%d",&a

,&b,&c);输入数据345或输入345则a=3,b=4,c=5使用显示分隔符:在格式说明符中还可以有其它字符,在输入字符时应输入与这些字符相同的字符。scanf("%d,%d,%d",&a,&b,&c);输入数据3,4,5则a=3,b=4,c=549格式字符说明d,i用来输

入有符号的十进制整数u用来输入无符号的十进制整数o用来输入无符号的八进制整数xX用来输入无符号的十六进制整数(大小写作用相同)c用来输入单个字符f用来输入实数,可以用小数形式或指数形式输入s用来输入字符串,将字符串送到一个字符数组中

,在输入时以非空白字符开始,以第一个空白字符结束。字符串以串结束标志′\0′作为其最后一个字符eEgG与f作用相同,e与f、g可以互相替换(大小写作用相同)scanf格式字符50字符说明l用于输入长整型数据(可用%ld,%lo,%lx,%lu)以及double型数据(用%lf或%le)h用于

输入短整型数据(可用%hd,%ho,%hx)域宽指定输入数据所占宽度(列数),域宽应为正整数*表示本输入项在读入后不赋给相应的变量scanf格式字符说明:对unsigned型变量所需要的数据,可以用%u,%d或%o,%x格式输入。可以指定输入数据所

占的列数,系统自动按它截取所需数据。如果在%后有一个“*”附加说明符,表示跳过它指定的列数。输入数据时不能规定精度。51字符数据的输入输出用putchar函数输出一个字符putchar函数(字符输出函数)的作用是向终端输出一个字符。一般形式为putchar(c)c可以是字符型变量或整型

变量52例1:输出单个字符。#include<stdio.h>voidmain(){chara,b,c;a=„B‟;b=„O‟;c=„Y‟;putchar(a);putchar(b);putchar(c);putchar(„\n‟);}53字符

数据的输入输出用getchar函数输入一个字符getchar函数(字符输入函数)的作用是从计算机终端输入一个字符。getchar函数没有参数,一般形式为getchar()函数的值就是从输入设备得到的字符543.7.3数学函数使用数学库中的函

数时,应该首先用预处理命令#include<math.h>指明要用到的数学函数的描述所在的头文件。调用数学函数时,要给出函数名,后面是一对圆括号,括号内是使用函数所需的参数,参数可以是常量、变量或表达式。5

5例:计算并打印2的3次方的语句可以写成:printf(“%7.2f”,pow(2.0,3.0));调用的数学函数pow需要两个参数,这两个参数都是double型的,返回值也是double型的。语句执行结果为:8.00。56常用数

学函数函数名功能举例fabs(x)计算x的绝对值fabs(-3.5)等于3.5sqrt(x)计算x的非负平方根sqrt(16.0)等于4.0exp(x)计算指数函数exexp(1.0)等于2.71828log

(x)计算x的自然对数lnxlog(2.718282)等于1.0log10(x)以10为底的对数函数log10xLog10(10.0)等于1.0pow(x,y)计算xypow(2.0,3.0)等于8.0sin(x)正弦函数sin(0.0)等于0.0cos(x)余弦函数cos(0.0)等

于1.057变量的定义inta,b,c;指定a,b,c为整型变量unsignedlower指定lower为无符号整型变量floatx,y;指定x,y为实型变量doublez;指定z为双精度实型变量charc1,c2;指定c1,c2为字符型变量课堂练习581.定义一个无符号长整

变量L1;unsignedshortS1unsignedlongL12.定义一个无符号短整变量S1;3.定义一个浮点类型变量F1;4.定义一个双精度变量D1;floatF1doubleD1按要求写语句:60写出下面算术表达式的值:设x=2.

5,a=10,y=4.7求表达式的值x+a%3*(int)(x+y)%2/41.x=2.5;a=10;y=4.7;2.a%3→10%3→13.(int)(x+y)→(int)7.2→74.[a%3]*[(int)(x+y)]→1*

7→75.{[a%3]*[(int)(x+y)]}%2→7%2→16.{{[a%3]*[(int)(x+y)]}%2}/4→1/4→07.x+{{[a%3]*[(int)(x+y)]}%2}/4→2.5+061思考题:(简单程序设计)输入三角形的三边长,求三角形的面积。6263

要求:1.深刻理解在计算机中各类型数据在内存中的存储形式、取值范围和能够对它进行的操作;2.深刻理解各基本类型作了short、long、unsigned扩展之后与原类型之间的区别;3.深刻理解各种整型常量的形式,字符常量、转义字符和符号常量的意义和作用。4.熟练掌握每一种变量的定义格式;5.深

刻理解每一个算术运算符的功能、使用格式、计算结果,尤其是/、%、++、--;6.深刻理解赋值运算符(=)的意义、注意与数学中的等号相区别;复合赋值运算符的执行过程和执行结果。64小结1、在计算机中对数据进行描述:数据的基本类型:整型、字符型、浮点类型;数据在在内存中的存储形式、取值

范围和能够对它进行的操作;扩展基本类型:short、long、unsigned2、常量:各种整型常量的形式、字符常量、转义字符、符号常量;3、变量:定义格式;4、运算符:算术运算符:/、%、++、--;优先级;赋值运算符:=,与数学中的等号相区别;

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