《C语言程序设计》第3章 数据类型、运算符及表达式.ppt

上传人:s****8 文档编号:67193303 上传时间:2022-12-24 格式:PPT 页数:29 大小:250KB
返回 下载 相关 举报
《C语言程序设计》第3章 数据类型、运算符及表达式.ppt_第1页
第1页 / 共29页
《C语言程序设计》第3章 数据类型、运算符及表达式.ppt_第2页
第2页 / 共29页
点击查看更多>>
资源描述

《《C语言程序设计》第3章 数据类型、运算符及表达式.ppt》由会员分享,可在线阅读,更多相关《《C语言程序设计》第3章 数据类型、运算符及表达式.ppt(29页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、1 程程序序设设计计 =数数据据结结构构 +算算法法C C 语语言言的的数数据据结结构构是是以以数数据据类类型型形形式式出出现现的的2常常 量量(在程序运行过程中,其值不能改变的量。在程序运行过程中,其值不能改变的量。分为字面常量和符号常量分为字面常量和符号常量)字面常量或直接常量:字面常量或直接常量:整常量:十进制整常量:十进制 +3 123 -12 0 12 +3 123 -12 0 12L 12l L 12l(3.03.0不是不是)八进制八进制 以以0 0开头开头 0123(0123(十进制十进制83)83)、-011(-9)-011(-9)十六进制十六进制 以以0 0 x x开开头头

2、0 0 x123(x123(291291),-0 x12(-0 x12(-1818)实常量:十进制小数点形式(实常量:十进制小数点形式(必须有小数点必须有小数点)0.20.2、.2.2、+2.0+2.0、-2.-2.、0.00.0(2 2不是)不是)e e指数形式指数形式 1 1e2e2、1E2 1E2 (代表代表1 110102 2=100=100)15 15e2e2、1.5E31.5E3、5e-2,-.5e1,1E0,5e-2,-.5e1,1E0,e e前后必须有数,前后必须有数,e e后必为整数后必为整数 3 3e e、e3e3、E E、2.1e3.5 2.1e3.5 错!错!123.4

3、56 123.456,12.345612.3456e1e1,1.23456e21.23456e2,0.123456e3 0.123456e3 均等价均等价 规范化形式规范化形式(小数点左边有且只有一位非零数字小数点左边有且只有一位非零数字)3字符常量:字符常量:aa、A(A(两者不同两者不同)、55转义字符:以反斜杠字符转义字符:以反斜杠字符“”“”开头的字符序列。开头的字符序列。意思是将意思是将“”“”后面的字符转换成另外意思。后面的字符转换成另外意思。n(n(换行,将当前位置移到下一行开头换行,将当前位置移到下一行开头)r(r(回车,将当前位置移到本行开头回车,将当前位置移到本行开头)t(

4、t(水平制表,跳到下一个水平制表,跳到下一个TabTab位置位置)b(b(退格,将当前位置移到前一列退格,将当前位置移到前一列)dddddd(1(1到到3 3位八进制数所代表的字符位八进制数所代表的字符)101 101代表代表ASCIIASCII码码(八进制八进制)为为101101,即即ASCIIASCII码码(十进制十进制)为为6565的字符的字符AA xhhxhh(1(1到到2 2位十六进制数所代表的字符位十六进制数所代表的字符)x41x41代表代表ASCIIASCII码码(十六进制十六进制)为为4141,即即ASCIIASCII码码(十进制十进制)为为6565的字符的字符AA 0 0代表

5、代表ASCIIASCII码为码为0 0的控制字符,即的控制字符,即“空操作空操作”字符。字符。4字符串常量:字符串常量:一对双引号括起来的字符序列一对双引号括起来的字符序列如:如:”How do you do.How do you do.”,”CHINACHINA”,”a a”printfprintf(”This is a program.This is a program.”););在内存中在内存中 长度为长度为6 6字符字符注意:注意:a a 与与 ”a a”不同不同内存中内存中 a a 0a a 0char c=char c=”a a”;是错的是错的 没有字符串变量,字符串需用字符数组存

6、放。没有字符串变量,字符串需用字符数组存放。C CH HI IN NA A0000是是字符串结束标志,即字符串结束标志,即ASCIIASCII码为码为0 0的空操作字符,以判断字的空操作字符,以判断字符串是否结束。在写字符串时符串是否结束。在写字符串时不必加不必加00,系统自动加。,系统自动加。5符号常量符号常量:例例3.1 3.1#define define PRICEPRICE 30 30#define#define PIPI 3.1416 3.1416 main()main()main()main()intint num,t;float r,s;num,t;float r,s;num=1

7、0;num=10;scanf scanf(“%f”,&r);(“%f”,&r);t=num*t=num*PRICEPRICE;s=2*;s=2*PIPI*r;*r;printfprintf(”t=%dn”,t);(”t=%dn”,t);printfprintf(“s=%fn”,s);(“s=%fn”,s);输出:输出:t=300 t=300 输入:输入:1 1 输出输出s=6.283184 s=6.283184 6变变 量:量:定义:类型、名字、初始化定义:类型、名字、初始化 intint i=1,j,k;i=1,j,k;shortshort m,n;m,n;longlong c,d;c,d;

8、unsignedunsigned u,v;u,v;floatfloat a=3.6,b=7.1;a=3.6,b=7.1;doubledouble x,y;x,y;charchar w1,w2=A w1,w2=A;变量名:由字母、数字和下划线组成变量名:由字母、数字和下划线组成 第一字符必为字母或下划线第一字符必为字母或下划线sum,X2,x2,student_name,_file sum,X2,x2,student_name,_file 正确正确M.D,$123,#M.D,$123,#abcabc,xy,3t,xy,3t,不正确不正确 注意,大小写字母认为是两个不同的字符注意,大小写字母认为是

9、两个不同的字符对变量对变量“先定义,后使用先定义,后使用”告诉系统分配告诉系统分配内存空间内存空间76 6种整型变量:种整型变量:有符号基本整型有符号基本整型 signedsigned int int无符号基本整型无符号基本整型unsignedunsigned int int有符号短整型有符号短整型 signed short signed short intint 无符号短整型无符号短整型unsigned short unsigned short intint 有符号长整型有符号长整型 signed long signed long intint 无符号短整型无符号短整型unsigned lo

10、ng unsigned long intint 其中,无符号整型变量中可以存放的正数的范围比一般整其中,无符号整型变量中可以存放的正数的范围比一般整型变量中正数范围扩大一倍。型变量中正数范围扩大一倍。例如:例如:intint a a;(-3276832767)(-3276832767)unsignedunsigned intint b b;(;(065535065535)C C语言没具体规定以上各类数据所占内存的字节数,只要求语言没具体规定以上各类数据所占内存的字节数,只要求longlong型数据长度不短于型数据长度不短于intint型,型,shortshort型不长于型不长于intint型。

11、型。8浮点型变量:浮点型变量:单精度单精度(floatfloat)双精度双精度(doubledouble)长双精度长双精度(long doublelong double)9字符型变量:字符型变量:将一个字符常量放到一个字符变量中,实际上并不是把该将一个字符常量放到一个字符变量中,实际上并不是把该字符本身放到内存中去,而是将该字符的相应字符本身放到内存中去,而是将该字符的相应ASCIIASCII代码放代码放到存储单元中。到存储单元中。这样使字符型数据和整型数据之间可以通用。这样使字符型数据和整型数据之间可以通用。例一:例一:charchar c1,c2;c1,c2;c1=97;c1=97;c2=

12、98;c2=98;printfprintf(“(“%c%c%c%cn”,c1,c2);n”,c1,c2);a ba bprintfprintf(“(“%d%d%d%dn”,c1,c2);n”,c1,c2);97 9897 98例二:例二:intint i;i;charchar c;c;i=a;i=a;c=97;c=97;10类型内存中字节数表示数的范围有效数字int2字节(16位)-3276832767-215(215-1)unsigned 2字节(16位)065535 0(216-1)long4字节(32位)-231(231-1)float4字节(32位)10-381038约7位double

13、8字节(64位)10-30810308约16位char1字节(8位)Turbo CTurbo C111213优先级优先级运算符运算符结合方向结合方向1()-(指针结构成员运算符指针结构成员运算符).(结构成员运算符结构成员运算符)从左到右从左到右2一元运算一元运算!+-+-*&(type)sizeof从右到左从右到左逻辑非逻辑非按位反按位反增增1减减1正正负负指针指针地址地址类型转类型转算长度算长度3算术运算算术运算*(乘乘)/(除除)%(求余数求余数)从左到右从左到右4算术运算算术运算+(加加)-(减减)从左到右从左到右5按位运算按位运算(右移位右移位)从左到右从左到右6关系运算关系运算=从

14、左到右从左到右7关系运算关系运算=(相等)(相等)!=(不等)(不等)从左到右从左到右8按位与按位与&从左到右从左到右9按位异按位异从左到右从左到右10按位或按位或|从左到右从左到右11逻辑与逻辑与&从左到右从左到右12逻辑或逻辑或|从左到右从左到右13三元运算三元运算条件运算条件运算?:从右到左从右到左14赋值运算赋值运算=+=-=*=/=%=&=|=从右到左从右到左15逗号逗号(顺序求值顺序求值)运算运算,从左到右从左到右有两种用法的有两种用法的4个运算符个运算符运算符运算符一元运算符一元运算符二元运算符二元运算符+正号正号算术加法算术加法-负号负号算术减法算术减法*指针指针算术乘法算术乘

15、法(365页附录页附录C)&地址地址按位与按位与141516 自增、自减运算符自增、自减运算符+i i、-i -i 使用使用i i之前,先增(减)之前,先增(减)1 1 i+i+、i-i-使用使用i i之后,再增(减)之后,再增(减)1 1 例:例:i=3;i=3;printf printf(”%dn”,i+);(”%dn”,i+);输出结果输出结果3 3 i=4i=4 i=3;i=3;printf printf(”%dn”,+i);(”%dn”,+i);输出结果输出结果4 4 i=4i=4 i=3;i=3;printf printf(”%dn”,-i+);(”%dn”,-i+);输出结果输出

16、结果-3 -3 i=4i=4 +与与-的结合方向是自右至左的结合方向是自右至左 -i+i+等价于等价于-(-(i+)i+),不是不是(-(-i)+i)+注意:注意:+与与-的左右必须是变量,而不能是常量和表达式的左右必须是变量,而不能是常量和表达式 5+,(5+,(a+b)+,(-k)+,-(a+4)a+b)+,(-k)+,-(a+4)都是错的都是错的 例:例:对于对于i=3i=3 k=i+;k=i+;执行后执行后k k值为值为3 3,i i为为4 4 k=+i;k=+i;执执行后行后k k值为值为4 4,i i为为4 4 1718376 376 以整数形式输出为以整数形式输出为-2-2,i

17、i的值也是的值也是-2-2。192021222324/*/*p66,ex0309:p66,ex0309:求算术表达式的值求算术表达式的值*/(1)(1)设设 x=2.5,a=7,y=4.7x=2.5,a=7,y=4.7 x+a%3*(int)(x+y)%2/4 x+a%3*(int)(x+y)%2/4 2.5+7%3*(int)(2.5+4.7)%2/4 2.5+7%3*(int)(2.5+4.7)%2/4 2.5+1*7%2/4 2.5+1*7%2/4 2.5+1/4 2.5+1/4 2.5 2.5(2)(2)设设a=2,b=3,x=3.5,y=2.5a=2,b=3,x=3.5,y=2.5

18、(float)(a+b)/2+(int)x%(int)y (float)(a+b)/2+(int)x%(int)y (float)(2+3)/2+(int)3.5%(int)2.5 (float)(2+3)/2+(int)3.5%(int)2.5 5.0/2+3%2 5.0/2+3%2 2 25+15+1 3.5 3.525/*/*p66,ex0310:p66,ex0310:写出程序运行结果写出程序运行结果 */main()main()intint i=8,j=10,m,n;i=8,j=10,m,n;m=+i;m=+i;n=j+;n=j+;printfprintf(%d,%d,%d,%dnn,

19、i,j,m,n);(%d,%d,%d,%dnn,i,j,m,n);输出结果输出结果:9 9,1111,9 9,1010i=9,m=9i=9,m=9n=10,j=11n=10,j=112627/*/*补充题补充题:求算术表达式的值求算术表达式的值*/*/1.7*2%3+5/2*4 1.7*2%3+5/2*4 14%3+2*4 2+814%3+2*4 2+8 10 10 2.3/5+1.3 02.3/5+1.3 0+1.3+1.3 1.3 1.33.13%5+3.13%5+d d 3+1003+100 103 103 或或 gg4.(b=5,b+,b-3,b*2)4.(b=5,b+,b-3,b*2)b=5b=5,b=6b=6,3 3,1212 12 12 2829

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 生活常识

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

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com