C语言第三章数据类型、运算符与表达式C.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《C语言第三章数据类型、运算符与表达式C.ppt》由会员分享,可在线阅读,更多相关《C语言第三章数据类型、运算符与表达式C.ppt(56页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第三章第三章 数据类型、运算符与表达式数据类型、运算符与表达式第三章第三章 数据类型、运算符和表达式数据类型、运算符和表达式主要内容主要内容C语言的常量与变量语言的常量与变量C语言的基本数据类型语言的基本数据类型各数据类型间的混合运算各数据类型间的混合运算运算符和表达式运算符和表达式C语言的数据类型语言的数据类型我们上节课讲到:我们上节课讲到:著名的计算机科学家著名的计算机科学家N.Wirth提出:提出:程序程序=数据结构数据结构(描述数据)(描述数据)+算法算法(描述操作)(描述操作)一个良好的程序,应当综合考虑算法和数据结构一个良好的程序,应当综合考虑算法和数据结构算法处理的对象是数据,而
2、数据是以某种特定的形式算法处理的对象是数据,而数据是以某种特定的形式存在的存在的数据结构是指数据的组织形式数据结构是指数据的组织形式C语言的数据类型语言的数据类型C语言的数据结构是以数据类型形式出现的语言的数据结构是以数据类型形式出现的C数数据据类类型型指针类型指针类型空类型空类型 void定义类型定义类型 typedef基本类型基本类型字符类型字符类型 char数值类型数值类型整整 型型短整型短整型 short长整型长整型 long整型整型 int浮点型浮点型单精度型单精度型 float双精度型双精度型 double构造类型构造类型枚举类型枚举类型 enum数组数组结构体结构体 struct
3、共用体共用体 union常量和变量常量和变量一、基本字符集一、基本字符集字符,字符,是组成语言的最基本元素,允许出现在是组成语言的最基本元素,允许出现在C语言源语言源程序的所有字符的集合,称为字符集。程序的所有字符的集合,称为字符集。字母:字母:az,AZ 数字:数字:09 特殊字符:控制字符、分隔符、运算符特殊字符:控制字符、分隔符、运算符常量和变量常量和变量二、关键字二、关键字关键字关键字,也叫做,也叫做保留字保留字,是指在,是指在C语言中具有特定的含语言中具有特定的含义的字符,它们由系统定义,不能做为他用。义的字符,它们由系统定义,不能做为他用。C语言中的一共有语言中的一共有32个关键字
4、:个关键字:autobreakcase charconst continuedefaultdodoubleelse enumexternfloatforgoto ifintlongregisterreturn shortsignedsizeofstaticstruct switchtypedefunsigned unionvoid volatilewhile常量和变量常量和变量三、标识符三、标识符用来标识变量名、符号常量名、函数名、数组名、类用来标识变量名、符号常量名、函数名、数组名、类型名、文件名的有效字符序列称为标识符。型名、文件名的有效字符序列称为标识符。也就是说,也就是说,标识符是一个
5、名字标识符是一个名字C语言中的标识符只能由语言中的标识符只能由字母、数字和下划线字母、数字和下划线组成组成而且而且第一个字符不能是数字第一个字符不能是数字不能将关键字作为标识符不能将关键字作为标识符常量和变量常量和变量C语言中的标识符只能由语言中的标识符只能由字母、数字和下划线字母、数字和下划线组成组成而且而且第一个字符不能是数字第一个字符不能是数字问题:下面四个选项中,均是合法的标识符的选项是问题:下面四个选项中,均是合法的标识符的选项是(A)a1 b!12_e(B)min f12 1x(C)a int PI(D)x2 m_nsum min 常量和变量常量和变量标识符的注意事项标识符的注意事
6、项C语言语言区分大小写区分大小写,大小写不同的标识符是不同的,大小写不同的标识符是不同的例如:例如:Student和和student是两个不同的标识符是两个不同的标识符标识符的标识符的长度有限制长度有限制,要注意开发环境的限定,要注意开发环境的限定Turbo C 允许的标识符的最大长度是允许的标识符的最大长度是32标识符的命名标识符的命名用有意义的单词组合用有意义的单词组合如:如:Stu_Num表示学号,表示学号,不要一味地用不要一味地用a,b,c等简单标识符名等简单标识符名常量和变量常量和变量三、常量三、常量常量:在程序的运行过程中,其值不能被改变常量:在程序的运行过程中,其值不能被改变常量
7、的分类:常量的分类:按字面形式按字面形式直接常量(字面常量)直接常量(字面常量)符号常量符号常量按数据类型按数据类型整型常量整型常量实型常量实型常量字符常量字符常量0、-2、1230.2、4.8、1.3e20A、g、+、?(用标识符表示的常量)(用标识符表示的常量)/*Constant example*/#define PRICE 30define PRICE 30 main()int num,total;num=10;total=num*PRICEPRICE;printf(total=%d,total)运行结果运行结果:total=300符号常量定义符号常量定义符号常量使用符号常量使用常量和
8、变量常量和变量使用符号常量的优点:使用符号常量的优点:含义清晰(定义时要注意采用合适的常量名)含义清晰(定义时要注意采用合适的常量名)一改全改一改全改/*Constant example*/#define PRICE 30define PRICE 30 main()int num,total;num=10;total=num*PRICEPRICE;printf(price=%d,total=%d,PRICEPRICE,total)运行结果运行结果:price=30,total=300/*Constant example*/#define PRICE define PRICE 2525 main
9、()int num,total;num=10;total=num*PRICEPRICE;printf(price=%d,total=%d,PRICEPRICE,total)运行结果运行结果:price=30,total=300/*Constant example*/#define PRICE define PRICE 2525 main()int num,total;num=10;total=num*PRICEPRICE;printf(price=%d,total=%d,PRICEPRICE,total)运行结果运行结果:price=25,total=250用指定的字符串用指定的字符串PRIC
10、E来代替来代替“25”在预编译处理时在预编译处理时会将程序中所有会将程序中所有“PRICE”用用“25”代替代替替换时是做简单地置换,不作正确性检查替换时是做简单地置换,不作正确性检查常量和变量常量和变量使用符号常量的优点:使用符号常量的优点:含义清晰(定义时要注意采用合适的常量名)含义清晰(定义时要注意采用合适的常量名)一改全改一改全改/*Constant example*/#define PRICE define PRICE 2525 main()int num,total;num=10;total=num*PRICEPRICE;printf(“price=%d,total=%d”,PRI
11、CEPRICE,total);运行结果运行结果:price=25,total=250宏定义(参见第十一章)宏定义(参见第十一章)常量名一般用大写字母常量名一般用大写字母#define命令出现在函数外命令出现在函数外有效范围是从定义处到源文件结束有效范围是从定义处到源文件结束宏定义不是宏定义不是C语句,不需要分号语句,不需要分号常量和变量常量和变量使用符号常量的优点:使用符号常量的优点:含义清晰(定义时要注意采用合适的常量名)含义清晰(定义时要注意采用合适的常量名)一改全改一改全改/*Constant example*/#define PRICE define PRICE 2525 main()
12、int num,total;PRICEPRICE=50;num=10;total=num*PRICEPRICE;printf(price=%d,total=%d,PRICEPRICE,total)运行结果运行结果:price=25,total=250常量不能被再次赋值常量不能被再次赋值编译时,简单地将编译时,简单地将“PRICE”替换成替换成“25”此语句被替换成:此语句被替换成:25=50常量和变量常量和变量四、变量四、变量变量:在程序的运行过程中,其值可以被改变的量变量:在程序的运行过程中,其值可以被改变的量变量必须用有效的标识符作为名字变量必须用有效的标识符作为名字变量名变量名实际上是存
13、放实际上是存放变量值变量值的存储单元地址的抽象的存储单元地址的抽象XXXXXXXXXXXXXXXX内存内存XXXXXXXXint sum;sumXXXXXXXX0内存内存XXXXXXXXsum=0;sum=sum+1;XXXXXXXX1内存内存XXXXXXXX常量和变量常量和变量四、变量四、变量C语言要求对所有变量:语言要求对所有变量:先定义,后使用先定义,后使用(强制定义)(强制定义)保证程序中的变量名使用正确保证程序中的变量名使用正确如:程序在声明部分声明变量如:程序在声明部分声明变量student:int student;在执行部分错写成在执行部分错写成studant:studant=3
14、0;在编译的时候会检查出在编译的时候会检查出studant未定义,不做为变量名未定义,不做为变量名编译时分配相应的存储单元编译时分配相应的存储单元编译时可以检查该变量所进行的运算是否合法编译时可以检查该变量所进行的运算是否合法如:在程序的声明部分做了如下定义:如:在程序的声明部分做了如下定义:int a;float b;在程序的执行部分有下面运算:在程序的执行部分有下面运算:a%b编译时会给出相关的出错信息编译时会给出相关的出错信息类型说明符类型说明符 变量列表变量列表int number整型数据整型数据一、整型常量的表示一、整型常量的表示v十进制十进制 如:如:123,-123,0v八进制八
15、进制(以(以 0 开头)开头)如:如:0123 表示十进制数表示十进制数83v十六进制十六进制(以(以 0 x 开头)开头)如:如:0 x123表示十进制数表示十进制数291整型数据整型数据二、整型变量在内存中的存储二、整型变量在内存中的存储整型变量在内存中是以二进制整型变量在内存中是以二进制补码补码补码补码的形式存放的的形式存放的int i=10;int j=-10;10ij-1000000000 0000101011111111 1111011011111111 11110101取反加1整型数据整型数据三、整型变量的种类三、整型变量的种类v基本类型:基本类型:intv根据数值的范围分为:根
16、据数值的范围分为:int,short,longv根据有无符号根据有无符号(singed/unsigned)及范围可分:及范围可分:类型类型比特数比特数取值范围取值范围signed int16-215 (215-1)unsigned int160 (216-1)signed short int16-215 (215-1)unsigned short int160 (216-1)signed long int32-231 (231-1)unsinged long int320 (232-1)01111111 11111111signed int 的最大值的最大值32767(215-1)100000
17、00 00000000signed int 的最小值的最小值-32768(-215)11111111 11111111unsigned int的最大值的最大值65535(216-1)00000000 00000000unsigned int的最小值的最小值0整型数据整型数据四、整型变量的定义四、整型变量的定义变量定义放在变量定义放在函数开头的声明部分函数开头的声明部分或者或者函数中某一分函数中某一分程序开头的声明部分程序开头的声明部分。main()int a,b,c,d;unsigned u;a=12;b=-24;u=10;c=a+u;d=b+u;printf(c=%d,d=%d,c,d);m
18、ain()int a,b;unsigned u;a=12;b=-24;u=10;int c,d;c=a+u;d=b+u;printf(c=%d,d=%d,c,d);Compiling c:ex3-2.cError.5:Expression syntax in function mainError.6:Undefined symbol c in function mainError.7:Undefined symbol d in function mainmain()int a,b;unsigned u;a=12;b=-24;u=10;int c,d;c=a+u;d=b+u;printf(c=%
19、d,d=%d,c,d);整型数据整型数据五、整型数据的溢出五、整型数据的溢出一个一个int型变量允许的最大值是型变量允许的最大值是3276701111111 11111111signed int 的最大值的最大值32767(215-1)10000000 00000000signed int 的最小值的最小值-32768(-215)当给当给32767加加1时:时:01111111 1111111110000000 00000000main()int a,b;a=32767;b=a+1;printf(a=%d,b=%d,a,b);a=32767,b=-32768输出输出:整型数据整型数据五、整型数
20、据的溢出五、整型数据的溢出一个一个int型变量允许的最大值是型变量允许的最大值是32767main()int a,b;a=65544;b=a+1;printf(a=%d,b=%d,a,b);a=8,b=9输出:输出:0000100000000000a10000100100000000b1整型数据整型数据六、整型常量的类型六、整型常量的类型v一个整数,若值在一个整数,若值在-3276832767范围内,认为是范围内,认为是int型型v一个整数,若在一个整数,若在-21474836482148473647范围内,而范围内,而超过了超过了-3276832767的范围,认为是的范围,认为是long i
21、nt型型v一个整数,后面加一个字母一个整数,后面加一个字母u或或U,认为是认为是unsigned int型型如:如:12345uv一个整数,后面加一个字母一个整数,后面加一个字母l或或L,认为是认为是long int型型如:如:12345L实型数据实型数据一、实型常量的表示一、实型常量的表示v十进制小数形式十进制小数形式如:如:.123 123.0.123 0.0v指数形式指数形式 如:如:123e3 123E3 1.23e5注意:注意:e的前面必须有数字,后面必须是整数的前面必须有数字,后面必须是整数如:如:e32 1.23e2.3 e 都是不合法的都是不合法的实型数据实型数据二、实型变量在
22、内存中的存储二、实型变量在内存中的存储实型变量在内存中以实型变量在内存中以指数指数指数指数的形式存放,一般占的形式存放,一般占4 4个字节个字节float f=3.14159;3.14159 =0.314159 101 =0.1100100 10000111 11100111 10101100100 10000111 1110011100000001阶码阶码小数部分小数部分数符数符阶符阶符实型数据实型数据三、实型变量的种类三、实型变量的种类v基本类型:基本类型:floatv根据数值的范围分为:根据数值的范围分为:vfloat(单精度型)单精度型)vdouble(双精度型)双精度型)vlong
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 第三 数据类型 运算 表达式
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内