C程序设计第2章数据类型、运算符和表达式.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程序设计第2章数据类型、运算符和表达式.ppt》由会员分享,可在线阅读,更多相关《C程序设计第2章数据类型、运算符和表达式.ppt(48页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第二章第二章 数据类型、运算符和表达式数据类型、运算符和表达式主讲:刘艳菊主讲:刘艳菊2008-2009-2 C+程序设计第二讲第二讲 数据类型、运算符和表达式数据类型、运算符和表达式本讲内容提要:本讲内容提要:基本数据类型基本数据类型常量和变量常量和变量常用的运算符和表达式常用的运算符和表达式C+C+语言程序设计语言程序设计2008-2009-2 C+程序设计2.1C+语言的数据类型语言的数据类型基本数据类型基本数据类型字符型(字符型(char)、整型()、整型(short int、int、long int)单精度浮点型(单精度浮点型(float)、双精度浮点型()、双精度浮点型(doubl
2、e、long double)布尔型(或逻辑型布尔型(或逻辑型bool)无值型(无值型(void)构造数据类型构造数据类型数组数组结构体(结构体(struct)共用体(共用体(Union)枚举(枚举(enum)类(类(class)其他其他指针指针引用引用数据类型、运算符和表达式数据类型、运算符和表达式思考:为什么需要有数据类型?2008-2009-2 C+程序设计2.1C+语言的数据类型语言的数据类型基本数据类型基本数据类型多种数据类型为程序提供更多的选择。多种数据类型为程序提供更多的选择。各数据类型的字节数取决于具体的编程环境。各数据类型的字节数取决于具体的编程环境。数据类型、运算符和表达式数
3、据类型、运算符和表达式类型符号关键字数的表示范围所占位数整型字符型实型有无(signed)int16-3276832767(signed)short int16-327683276716unsigned int0655353204294967295unsigned long intunsigned shortint16065535有float323.4e-383.4e38有double641.7e-3081.7e308有char8-128127无unsigned char80255(signed)long int32-214748364821474836472008-2009-2 C+程序设计
4、2.1C+语言的数据类型语言的数据类型类型修饰符类型修饰符C+还允许在基本数据类型(除还允许在基本数据类型(除void类型外)前加上类型类型外)前加上类型修饰符,来更具体地表示数据类型。修饰符,来更具体地表示数据类型。C+的类型修饰符包括:的类型修饰符包括:signed有符号有符号unsigned无符号无符号short短型短型long长型长型数据类型、运算符和表达式数据类型、运算符和表达式2008-2009-2 C+程序设计2.1C+语言的数据类型语言的数据类型基本数据类型基本数据类型-整型整型整型数据可以分成有符号(整型数据可以分成有符号(signed)和无符号)和无符号(unsigned)
5、两类;每类又包含长整型()两类;每类又包含长整型(long int)、一)、一般整型(般整型(int)和短整型()和短整型(short int)。)。在不同的机器、不同的操作系统和不同的在不同的机器、不同的操作系统和不同的C+编译器中,编译器中,数据类型的表示方式各不相同:数据类型的表示方式各不相同:16位机,位机,short和和int占占2字节,字节,long4字节;字节;32位机,位机,short占占2字节,字节,int和和long占占4字节。字节。整型数据的存储方式为按二进制数形式存储,例如十进制整型数据的存储方式为按二进制数形式存储,例如十进制整数整数85的二进制形式为的二进制形式为1
6、010101,则在内存中的存储形式,则在内存中的存储形式如图所示如图所示 数据类型、运算符和表达式数据类型、运算符和表达式00000000010101012008-2009-2 C+程序设计2.1C+语言的数据类型语言的数据类型基本数据类型基本数据类型-整型整型按照按照C+规定,各种类型的表示范围满足下面的条件:短规定,各种类型的表示范围满足下面的条件:短整型整型整型整型长整型。表长整型。表2-1给出了给出了Microsoft C+中各种整中各种整型类型的特性。型类型的特性。数据类型、运算符和表达式数据类型、运算符和表达式类别类型标识符类型字节表示范围有符号signed short int(简
7、写为short)有符号短整型2-3276832767signed int(简写为int)有符号整型4-21474836482147483647signed long int(简写为 long)有符号长整型4-21474836482147483647无符号unsigned short int(简写为unsigned short)无符号短整型2065535unsigned int(简写为unsigned)无符号整型404294967295unsigned long int(简写为 unsigned long)无符号长整型4042949672952008-2009-2 C+程序设计2.1C+语言的数
8、据类型语言的数据类型基本数据类型基本数据类型-浮点型浮点型C+中有中有3种浮点类型:单精度(种浮点类型:单精度(float)、双精度)、双精度(double)和长双精度()和长双精度(long double)。)。C+中浮点数均为有符号浮点数,没有无符号浮点数,表中浮点数均为有符号浮点数,没有无符号浮点数,表示精度满足下面的条件:浮点型示精度满足下面的条件:浮点型双精度型双精度型长双精度型。长双精度型。数据类型、运算符和表达式数据类型、运算符和表达式类型标识符类型字节可表示最小的绝对值可表示最大的绝对值float单精度型41.175494351E383.402823466E+38double双
9、精度型82.22507385850720143081.7976931348623158E+308long double长双精度型82.22507385850720143081.7976931348623158E+3082008-2009-2 C+程序设计2.1C+语言的数据类型语言的数据类型基本数据类型基本数据类型-字符型字符型C+中有中有3种字符类型:字符型(种字符类型:字符型(char)、有符号字符型)、有符号字符型(signed char)和无符号字符型()和无符号字符型(unsigned char)。)。数据类型、运算符和表达式数据类型、运算符和表达式类型标识符类型字节表示范围char
10、字符型1-128127signed char有符号字符型1-128127unsigned char无符号字符型10255注意:字符型数据在操作时将按整型数处理。注意:字符型数据在操作时将按整型数处理。2008-2009-2 C+程序设计2.1C+语言的数据类型语言的数据类型基本数据类型基本数据类型-布尔型布尔型布尔类型用于表示布尔逻辑数据,布尔逻辑数据只有两个:布尔类型用于表示布尔逻辑数据,布尔逻辑数据只有两个:true和和false。注意:在注意:在C+中,布尔型的数据可以作为整型数据进行运中,布尔型的数据可以作为整型数据进行运算,算,true为非为非0整数,整数,false为整数为整数0;
11、整型数据也可以作为;整型数据也可以作为布尔型数据进行运算,非布尔型数据进行运算,非0整数为整数为true,整数,整数0为为false。布。布尔类型数据可以施加逻辑运算。尔类型数据可以施加逻辑运算。基本数据类型基本数据类型-无值型无值型在在C+语言中它用来说明函数及其参数,没有返回值的函语言中它用来说明函数及其参数,没有返回值的函数说明为数说明为void类型的函数,没有参数的函数其形参表由类型的函数,没有参数的函数其形参表由void表示,表示,void类型的值集为一空集。类型的值集为一空集。数据类型、运算符和表达式数据类型、运算符和表达式2008-2009-2 C+程序设计2.2常量常量在在C+
12、程序运行中,有一些数据是一直不变的,这些程序运行中,有一些数据是一直不变的,这些数据称为常量。数据称为常量。由于程序中的数据是有类型的,所以常量是有类型的。由于程序中的数据是有类型的,所以常量是有类型的。常量的类型常量的类型常量按照不同的数据类型可以分为:常量按照不同的数据类型可以分为:字符型常量、整型常量、浮点型常量,以及字符串常量等。字符型常量、整型常量、浮点型常量,以及字符串常量等。程序是根据程序中常量的书写格式来区分它是哪种类型常程序是根据程序中常量的书写格式来区分它是哪种类型常量的。量的。数据类型、运算符和表达式数据类型、运算符和表达式2008-2009-2 C+程序设计2.2常量常
13、量-整型常量整型常量整型常量整型常量在程序中书写整型常量时,没有小数部分。用户可根据需在程序中书写整型常量时,没有小数部分。用户可根据需要用十进制、八进制和十六进制的形式书写。要用十进制、八进制和十六进制的形式书写。十进制格式十进制格式:由数字由数字0至至9和正、负号组成,书写时直接写出数字。和正、负号组成,书写时直接写出数字。如:如:123,-516,+1000等。等。八进制格式八进制格式:以数字以数字0开头的数字(开头的数字(0至至7)序列。)序列。如:如:0111,010007,0177777等。等。十六进制格式十六进制格式:以以0 x或或0X开头的数字(数字开头的数字(数字0至至9、字
14、母、字母a至至z)序列。)序列。如:如:0 x78AC,0 xFFFF等。等。数据类型、运算符和表达式数据类型、运算符和表达式2008-2009-2 C+程序设计2.2常量常量-浮点型常量浮点型常量浮点型常量浮点型常量只能用十进制来表示。可以用小数或指数形式表示,不分只能用十进制来表示。可以用小数或指数形式表示,不分单精度和双精度类型。单精度和双精度类型。小数格式小数格式 35.12 5.(5.0).5(0.5)指数格式指数格式33.5E1浮点常量默认类型为浮点常量默认类型为double若若-35.8f,0.314e-3f(强制为强制为float)若若0.5L(强制为强制为long doubl
15、e)数据类型、运算符和表达式数据类型、运算符和表达式指数的写法:指数的写法:1、e前必须有数字前必须有数字 2、e后必须是整数后必须是整数非法:非法:e-03,1.2e+0.52008-2009-2 C+程序设计2.2常量常量-字符型常量字符型常量字符型常量字符型常量用一对单引号括起来的一个字符,单引号只是字符与其他用一对单引号括起来的一个字符,单引号只是字符与其他部分的分割符,不是字符的一部分,并且,不能用双引号部分的分割符,不是字符的一部分,并且,不能用双引号代替单引号。在单引号中的字符不能是单引号或反斜杠。代替单引号。在单引号中的字符不能是单引号或反斜杠。如:如:a,A,#合法的字符常量
16、合法的字符常量 ,非法的字符常量非法的字符常量“A”不代表字符常量不代表字符常量数据类型、运算符和表达式数据类型、运算符和表达式H,$单引号括起来的单引号括起来的ASCII字符字符 A x41101n,转意字符,非转意字符,非ASCII字符字符2008-2009-2 C+程序设计2.2常量常量-字符型常量字符型常量转义字符转义字符采用反斜杠后跟一个字母来代表一个控制字符,具有新的采用反斜杠后跟一个字母来代表一个控制字符,具有新的含义含义。数据类型、运算符和表达式数据类型、运算符和表达式转义字符转义字符含义含义ASCII码值(十进制)码值(十进制)a响铃(BEL)7b退格(BS)8n换行(LF)
17、10r回车(CR)13t水平制表(HT)9v垂直制表(VT)11反斜杠92单引号39”双引号340空字符(NULL)0ddd任意字符3位八进制数xhh任意字符2位十六进制数2008-2009-2 C+程序设计2.2常量常量-字符串常量字符串常量字符串常量字符串常量用一对双引号括起来的字符的序列称为字符串常量或字符用一对双引号括起来的字符的序列称为字符串常量或字符串。串。字符串以双引号为定界符,双引号不作为字符串的一部分。字符串以双引号为定界符,双引号不作为字符串的一部分。如:如:“Hello”,“Good Morning!”,“I say:“Goodbye!”注意:字符串常量占用连续的存储单元
18、,在最后的字符后注意:字符串常量占用连续的存储单元,在最后的字符后面加一个字符面加一个字符0作为字符串结束标志。作为字符串结束标志。例如,如果字符变量例如,如果字符变量C1的值为的值为A,C2的值为的值为 B,则,则在变量中存放的是在变量中存放的是A 的的ASCII码码65,B 的的ASCII码码66,在内存中以二进制形式存放。,在内存中以二进制形式存放。数据类型、运算符和表达式数据类型、运算符和表达式C1C2 AB(65)(66)10000011000010“a”“a”和和 a a 的差别?的差别?字符常量用单引号字符常量用单引号,而字符串常量用双引号,而字符串常量用双引号“”;字符常量在内
19、存中占一个字节,而字符串都有一个结束符字符常量在内存中占一个字节,而字符串都有一个结束符(0);他们具有的操作功能不同,字符有加减运算。他们具有的操作功能不同,字符有加减运算。a-b+1 “a”-“b”+1 2008-2009-2 C+程序设计2.2常量常量-例例2.1例例2.1 将字符将字符A和和B赋给整型变量。用一对双引号括起赋给整型变量。用一对双引号括起来的字符的序列称为字符串常量或字符串。来的字符的序列称为字符串常量或字符串。数据类型、运算符和表达式数据类型、运算符和表达式#include/预处理命令预处理命令void main()/主函数首部主函数首部/函数体开始函数体开始 int
20、x,y;/定义整型变量定义整型变量x和和y x=A;/将一个字符常量将一个字符常量A赋给整型变量赋给整型变量x y=B;/将一个字符常量将一个字符常量B赋给整型变量赋给整型变量y coutx=xn;/输出整型变量输出整型变量x的值,的值,n是换行符相当于是换行符相当于endl;couty=yendl;/输出整型变量输出整型变量y的值的值/函数结束函数结束x=65y=662008-2009-2 C+程序设计2.2常量常量-符号常量符号常量 符号常量符号常量 常量也可用一个标识符来代表,称为符号常量。常量也可用一个标识符来代表,称为符号常量。如:如:#define PRICE 30使用符号常量的好
21、处:使用符号常量的好处:含义清楚;含义清楚;在需要改变一个常量时可在需要改变一个常量时可“一改全改一改全改”。使用符号常量应注意以下几个方面:使用符号常量应注意以下几个方面:它不同于变量,在作用域内其值不能改变和赋值。它不同于变量,在作用域内其值不能改变和赋值。如:在上例中如再用如:在上例中如再用PRICE=40;这一语句进行赋值则是错误的。这一语句进行赋值则是错误的。符号常量名一般用大写,而变量名用小写,以示区别。符号常量名一般用大写,而变量名用小写,以示区别。数据类型、运算符和表达式数据类型、运算符和表达式在程序中任何要改变符号常量的企图都将导致编译错误在程序中任何要改变符号常量的企图都将
22、导致编译错误2008-2009-2 C+程序设计2.2常量常量-例例2.2例例2.2符号常量的使用符号常量的使用 数据类型、运算符和表达式数据类型、运算符和表达式#define PRICE 10/定义符号常量定义符号常量PRICE。注意此行不是语句,末尾不要加分号。注意此行不是语句,末尾不要加分号#include/预处理命令预处理命令void main()/主函数首部主函数首部 /函数体开始函数体开始 int n,sum;/定义整型变量定义整型变量n和和sum n=5;/将整数将整数5赋给整型变量赋给整型变量n sum=n*PRICE;/将将n与与PRICE的乘积赋给整型变量的乘积赋给整型变量
23、sum coutn=nn;/输出整型变量输出整型变量n的值的值 coutPRICE=PRICEn;/输出符号常量输出符号常量PRICE的值的值 coutsum=sumn;/输出整型变量输出整型变量sum的值的值 /函数结束函数结束n=5PRICE=10sum=502008-2009-2 C+程序设计2.2常量常量-综合例子综合例子综合例子:综合例子:数据类型、运算符和表达式数据类型、运算符和表达式long int a=3L;uigned int b=0 x5A3;float c=33.5E1;/float c=e+0.3;double d=.5;char e=A;/char e=n;char*
24、f=“hello!n”;const float MaxSize=20;float size=MaxSize*100;2008-2009-2 C+程序设计2.3变量变量变量的概念和特点变量的概念和特点每一变量就相当于一个容器,对应着计算机内存中的某一每一变量就相当于一个容器,对应着计算机内存中的某一块存储单元,用于存储程序中的数据。块存储单元,用于存储程序中的数据。变量的名字变量的名字变量的名字同标识符的命名规则。变量的名字同标识符的命名规则。保留字不能作为变量名、函数名、类型名的使用。保留字不能作为变量名、函数名、类型名的使用。尽量尽量“见名知意见名知意”。如,。如,m_Price一般使用命名
25、约定,如著名的匈牙利命名约定。如,一般使用命名约定,如著名的匈牙利命名约定。如,strName数据类型、运算符和表达式数据类型、运算符和表达式变量名为m_Price变量值为2.02.0变量的地址1010H1030H内存内存1.502008-2009-2 C+程序设计2.3变量变量-定义定义定义变量定义变量程序中的每一变量,都要先定义,后使用。程序中的每一变量,都要先定义,后使用。定义变量的一般有以下三种格式:定义变量的一般有以下三种格式:数据类型数据类型 变量名;变量名;数据类型数据类型 变量名变量名=初始化值;初始化值;数据类型数据类型 变量名变量名1=初始值初始值1,变量名,变量名2=初始
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计 数据类型 运算 表达式
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内