《C语言程序设计》数据类型、运算符和表达式 课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《《C语言程序设计》数据类型、运算符和表达式 课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C语言程序设计 C语言程序设计数据类型、运算符和表达式 课件 语言程序设计 数据类型 运算 表达式
- 资源描述:
-
1、语言程序设计数据类型、运算符和表达式 1ppt课件一、C语言的数据类型 2ppt课件3ppt课件二、C语言的变量和常量4ppt课件2.1 常量和符号常量1 1、常量、常量:在程序运行过程中,其值不能被改在程序运行过程中,其值不能被改变的量。变的量。每种数据类型都有常量,也都有变量。如整型每种数据类型都有常量,也都有变量。如整型常量、浮点型常量常量、浮点型常量.例如:例如:12 12、4 4、-67-67 或或 3.143.14 5.6 5.6 或或 a a、dd 从上可以看出常量可以是不同类型的从上可以看出常量可以是不同类型的.2 2、常量分为两种直接常量和符号常量。、常量分为两种直接常量和符
2、号常量。直接常量直将数值直接使用,如:直接常量直将数值直接使用,如:a=ba=b*1010;当用一个标志符代表一个常量时,称为符号常量当用一个标志符代表一个常量时,称为符号常量.5ppt课件2.1 常量和符号常量1 1、常量、常量:在程序运行过程中,其值不能被改在程序运行过程中,其值不能被改变的量。变的量。每种数据类型都有常量,也都有变量。如整型每种数据类型都有常量,也都有变量。如整型常量、浮点型常量常量、浮点型常量.例如:例如:12 12、4 4、-67-67 或或 3.143.14 5.6 5.6 或或 a a、dd 从上可以看出常量可以是不同类型的从上可以看出常量可以是不同类型的.2 2
3、、常量分为两种直接常量和符号常量。、常量分为两种直接常量和符号常量。直接常量直将数值直接使用,如:直接常量直将数值直接使用,如:a=ba=b*1010;当用一个标志符代表一个常量时,称为符号常量当用一个标志符代表一个常量时,称为符号常量.6ppt课件上例中的上例中的PRICE PRICE 就称为符号常量;凡在程序中出现的就称为符号常量;凡在程序中出现的PRICE PRICE 都代表都代表3030。PRICE=PRICE+5;PRICE=PRICE+5;/*正确否*/一般情况下,符号常量名用大写、变量用小写。一般情况下,符号常量名用大写、变量用小写。例例:#define PRICE 30defi
4、ne PRICE 30main()main()intint num,total;num,total;num=10;num=10;total=num total=num*PRICE;PRICE;printf(totalprintf(total=%d,total);=%d,total);7ppt课件3 3、符号常量的声明和使用、符号常量的声明和使用一般放在程序的前端,与一般放在程序的前端,与#include include 在一块:在一块:#define define 符号常量名符号常量名 值值如:如:#define Zero 0define Zero 0好处:好处:含义清楚含义清楚(#(#def
5、ine Second 60)define Second 60)一改全改一改全改(#(#define PI 3.14)define PI 3.14)8ppt课件2.2 变量 在程序运行过程中,在程序运行过程中,其值可以改变其值可以改变的量称为变的量称为变量。量。一个变量应该有一个变量名,并且一个变量应该有一个变量名,并且在内存中占在内存中占据一定的的存储单元据一定的的存储单元用来存放变量的值。用来存放变量的值。注意:变量名与变量值的区别注意:变量名与变量值的区别 9ppt课件在在C C语言中,要求对所有用到的变量作强制定义,语言中,要求对所有用到的变量作强制定义,即即“先定义、后使用先定义、后使
6、用”。因为:因为:1 1、编译程序不能翻译未定义变量。编译程序不能翻译未定义变量。2 2、编译程序在编译时根据变量类型确定存储编译程序在编译时根据变量类型确定存储单元的数量并分配空间单元的数量并分配空间 3 3、编译程序在编译时根据变量类型进行语法检查。、编译程序在编译时根据变量类型进行语法检查。例,整型变量例,整型变量a a、b b可以进行可以进行“求余求余”运算运算 a%ba%b;若把若把a a、b b定义为实数,则上述运算非法。定义为实数,则上述运算非法。10ppt课件main()int i,studentNo;i=5;studentno=5;/*错在哪里错在哪里*/j=3;/*错在哪里
7、错在哪里*/11ppt课件 一条变量说明语句由数据类型和其后的一个或多一条变量说明语句由数据类型和其后的一个或多个变量名组成。变量说明的形式如下个变量名组成。变量说明的形式如下:类型类型 ;这里类型是指这里类型是指Turbo C2.0Turbo C2.0的有效数据类型。的有效数据类型。变量表是一个或多个变量表是一个或多个,每个标识符之间每个标识符之间用用,分隔。分隔。例如例如:intint i i intint i,j,k;i,j,k;char c,str5,char c,str5,*p;p;12ppt课件 所谓所谓标识符标识符是指常量、变量、语句标号以及用户是指常量、变量、语句标号以及用户自
8、定义函数的名称。自定义函数的名称。Turbo C 2.0 Turbo C 2.0标识符的定义十分灵活。作为标识符标识符的定义十分灵活。作为标识符必须满足以下规则必须满足以下规则:1.1.所有标识符必须由一个字母所有标识符必须由一个字母(az,AZ)az,AZ)或下或下划线划线(_)(_)开头开头;2.2.标识符的其它部分可以用字母、下划线或数字标识符的其它部分可以用字母、下划线或数字(09)(09)组成组成;3.3.大小写字母表示不同意义大小写字母表示不同意义,即代表不同的标识即代表不同的标识符符;4.4.标识符只有前标识符只有前3232个字符有效个字符有效(Turbo C)Turbo C)5
9、.5.标识符不能使用标识符不能使用Turbo C2.0Turbo C2.0的关键字。的关键字。2.3标识符13ppt课件下面举出几个正确和不正确的标识符下面举出几个正确和不正确的标识符:正确正确-不正确不正确smartsmart-5smart5smart_decision_decision-bomb?bomb?key_boardkey_board-key.board key.board FLOATFLOAT-floatfloat14ppt课件三、整型数据15ppt课件 整型常量即整常数按不同的进制区分整型常量即整常数按不同的进制区分,整型常数整型常数有三种表示方法有三种表示方法:十进制数十进制
10、数:以非以非0 0开始的数开始的数 如如:220,-560,45900:220,-560,45900八进制数八进制数:以以0 0开始的数开始的数 如如:06;0106,05788:06;0106,05788十六进制数十六进制数:以以0 0X X或或0 0 x x开始的数开始的数 如如:0:0X0D,0XFF,0 x4e X0D,0XFF,0 x4e 3.1.整型常量 16ppt课件main()int i;i=11;printf(“i=%dn”,i);i=011;printf(“i=%dn”,i);i=0 x11;printf(“i=%dn”,i);i=0X11;printf(“i=%dn”,i
11、);程序的输出结果是多少?程序的输出结果是多少?17ppt课件注意:注意:可在整型可在整型常数常数后后添加一个添加一个 LL或或 ll字母字母表示该数为表示该数为长整型数长整型数,如如2222L,0773L,0Xae4lL,0773L,0Xae4l。另外另外,所有整数的缺省类型是所有整数的缺省类型是intint,可在整型常数可在整型常数后添加一个后添加一个 LL或或 ll字母表示该数为长整型数字母表示该数为长整型数,如如 22 22L,0773L,0Xae4lL,0773L,0Xae4l。若加上若加上一个一个 uu或或 UU字母表示该数为无符号字母表示该数为无符号整型数,整型数,如如2727u
12、,0400u,0 xb8000000uu,0400u,0 xb8000000u。若加上一个若加上一个 ulul 或或 ULUL字母表示该数为无符号长整字母表示该数为无符号长整型型数,如数,如 27 27ulul,0400UL,0 xb8000000UL,0400UL,0 xb8000000UL。当整数的值超出当整数的值超出intint类型所能表示的范围时称为整类型所能表示的范围时称为整数数溢出溢出。18ppt课件 1 1整型变量的分类整型变量的分类:加上不同的修饰加上不同的修饰符符,整型变整型变量有以下几种类型量有以下几种类型;C C语言标准没有规定整型变量在计算机内存中所语言标准没有规定整型
13、变量在计算机内存中所占的字节数,它与具体的机器和操作系统有关:占的字节数,它与具体的机器和操作系统有关:3.2、整型变量19ppt课件2.2.整型变量的定义整型变量的定义可以用下列语句定义整型变量可以用下列语句定义整型变量:intint a,b;a,b;/*a a、b b被定义为有符号短整型变量被定义为有符号短整型变量*/unsigned long c;unsigned long c;/*c c被定义为无符号长整型变量被定义为无符号长整型变量*/unsigned short c,d;unsigned short c,d;/*指定变量指定变量c c、d d为无符号短整型为无符号短整型 */lon
14、g e,f;long e,f;/*指定变量指定变量e e、f f为长整型为长整型*/程序中在函数的开头部分定义变量。程序中在函数的开头部分定义变量。20ppt课件main()main()intint a,b,c,d;a,b,c,d;/*指定变量指定变量a a、b b、c c、d d为整型为整型 */unsigned u;unsigned u;/*指定变量指定变量u u为无符号整型为无符号整型 */a=12;b=-24;u=10;a=12;b=-24;u=10;c=a+u;d=b+u;c=a+u;d=b+u;printf(a+uprintf(a+u=%d,b+u=%dn,c,d);=%d,b+u
15、=%dn,c,d);程序运行显示:程序运行显示:a+u=22,b+u=-14a+u=22,b+u=-14 21ppt课件3.3.整型变量的溢出整型变量的溢出 main()main()intint i,j;i,j;unsigned k,l,m;unsigned k,l,m;i=32767;i=32767;j=i+1;j=i+1;l=65535u;l=65535u;m=l+2;m=l+2;printf(jprintf(j=%dn,j);=%dn,j);printf(lprintf(l=%un,l);=%un,l);printf(mprintf(m=%un,m);=%un,m);象这类问题体现了象这
16、类问题体现了C C语言灵活性所带来的副作用。语言灵活性所带来的副作用。这种错误系统不给提示,由程序员自己控制。这种错误系统不给提示,由程序员自己控制。22ppt课件四、实型数据23ppt课件实数(实数(realreal)又称为浮点数(又称为浮点数(floatfloat),有两种表达方式:有两种表达方式:普通普通(十进制十进制)方式:方式:0.1230.123、.123.123、123.0 123.0、123.123.、0.0 0.0(必须有小数点)(必须有小数点)指数方式:指数方式:123123e3e3或或123123E3E3、123E-2123E-2注意注意:字母:字母e(e(或或E)E)之
17、前必须有数字之前必须有数字 e e后面指数必须为整数后面指数必须为整数规范化指数形式规范化指数形式:e e前的小数部分中,小数点左边只能有一前的小数部分中,小数点左边只能有一位非位非0 0数字。如下面例子应为:数字。如下面例子应为:1.23 1.23e5e5 错误:错误:0.1230.123e6e64.1 实型常量24ppt课件4.2 实型变量精确程度例:例:float x,y;/float x,y;/*指定指定x x、y y为单精度实型变量为单精度实型变量 */double z;/double z;/*指定指定z z为双精度实型变量为双精度实型变量 */实型常量不分实型常量不分floatfl
18、oat和和doubledouble。问题:如何用图示的方法表示这些变量的内存空间?问题:如何用图示的方法表示这些变量的内存空间?25ppt课件4.3 实型变量的误差与精度main()float a,b;a=123456.789e5;b=a+20;printf(“%fn”,a);printf(“%fn”,b);注意输出结果注意输出结果main()float a;double b;a=111111.111;b=111111.111;printf(“%fn”,a);printf(“%fn”,b);注意输出结果注意输出结果26ppt课件五、字符型数据27ppt课件用用单引号单引号(撇号撇号)括起来的一
19、个字符。括起来的一个字符。如:如:aa、xx、DD、?、$。注意,注意,aa和和AA是不同的字符常量。是不同的字符常量。因为因为C C语言区分大小写。语言区分大小写。以以“”“”开头的字符序列,称为开头的字符序列,称为“转义序列转义序列”。“”“”使其后面的字符变为另外的意义。见下表。使其后面的字符变为另外的意义。见下表。5.1 字符常量28ppt课件29ppt课件转义序列主要用来控制打印机和屏幕输出。转义序列主要用来控制打印机和屏幕输出。例:例:printf(nprintf(n sum is%dnn,sum);sum is%dnn,sum);比较下面两句的区别:比较下面两句的区别:print
20、f(“thisprintf(“this is a“test”);is a“test”);/*出错出错*/printf(“thisprintf(“this is a“test”);is a“test”);/*输出输出:this is a“test”this is a“test”*/30ppt课件char c1,c2;/char c1,c2;/*定义定义c1c1、c2c2为字符变量为字符变量 */c1=a;c2=b;c1=a;c2=b;字符变量在内存中占一字节。字符变量在内存中占一字节。问题:如何用图示的方法表示这些变量的内存问题:如何用图示的方法表示这些变量的内存空间?空间?5.2 字符变量31
21、ppt课件字符在内存中以字符在内存中以ASCIIASCII码存放。码存放。5.3 字符数据在内存中的存储形式及其使用方法32ppt课件main()main()char c1,c2;char c1,c2;c1=A;c2=B;c1=A;c2=B;printf(%cprintf(%c%c,c1+32,c2+32);%c,c1+32,c2+32);该例的输出是:该例的输出是:a b a b 33ppt课件main()main()char c1,c2;char c1,c2;c1=a;c2=b;c1=a;c2=b;c1=c1-32;c2=c2-32;c1=c1-32;c2=c2-32;printf(%cp
22、rintf(%c%c,c1,c2);%c,c1,c2);C C语言允许字符和整数之间进行运算语言允许字符和整数之间进行运算 34ppt课件字符常量字符常量:单引号单引号括起来的括起来的一个字符一个字符。字符串常量字符串常量:双引号双引号括起来的括起来的字符序列字符序列(00N N个字符)。如:个字符)。如:How do you do.,How do you do.,CHINA,a,$123.45CHINA,a,$123.45字符串常量在内存中的存放:字符串常量在内存中的存放:每一个字符均以其每一个字符均以其ASCIIASCII码存放,码存放,且最后添加一且最后添加一个个“空字符空字符”(二进制
23、(二进制0000000000000000,记为,记为NULLNULL或或 0 0。字 符。字 符 0 0 在 内 存 中 存在 内 存 中 存 0 0 x 3 0 x 3 0 即即0010000000100000)。)。5.4 字符串常量35ppt课件例:字符串常量例:字符串常量“CHINA”CHINA”存放在内存中的情况存放在内存中的情况是:是:(6(6字节存储器空间,不是字节存储器空间,不是5 5字节字节)因此,因此,字符字符 aa和字符串和字符串 aa的区别的区别是:是:字符字符a a:1 1字节字节(值为(值为9797)字符串字符串 aa:2 2字节字节(值为(值为97,097,0)3
24、6ppt课件5.5 字符与整型的相互转换main()main()char c1,c2;char c1,c2;c1=a;c2=b;c1=a;c2=b;printfprintf(“c1=%c,c2=%c n”,c1,c2);(“c1=%c,c2=%c n”,c1,c2);printfprintf(“c1=%d,c2=%d n”,c1,c2);(“c1=%d,c2=%d n”,c1,c2);/*问题:结果如何*/37ppt课件六、变量赋初值38ppt课件为什么要给变量赋初值?为什么要给变量赋初值?(教室不打扫教室不打扫)因为分配的内存空间可能有一个因为分配的内存空间可能有一个脏数据脏数据。如果。如果
25、不赋初值,默认初始值就是这个脏数据。不赋初值,默认初始值就是这个脏数据。(举举例说明例说明)1.1.定义的同时给变量赋初值定义的同时给变量赋初值如:如:intint a=3;float b=3.1415;a=3;float b=3.1415;char c=x;char c=x;2.2.定义变量时,可以对其中的一部分变量赋初定义变量时,可以对其中的一部分变量赋初值值.如:如:intint a=3,b,c,d=8;a=3,b,c,d=8;39ppt课件3.3.把一个值赋给不同变量时,要分别进行。把一个值赋给不同变量时,要分别进行。如不应写为:如不应写为:intint a=b=c=3;a=b=c=3
展开阅读全文