




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、主讲:傅保伟主讲:傅保伟第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算基本数据类型基本数据类型常量和变量常量和变量运算符和表达式运算符和表达式本章内容提要:本章内容提要:第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算复习引入复习引入问题:计算机内数据的存储问题:计算机内数据的存储(表示表示)形式形式?整数整数10在计算机内的存储形式在计算机内的存储形式小数小数 (3.1416)在计算机内的存储形式在计算机内的存储形式 整数10 3.1416 11.00100100001 B 0.11001001000 210 第第3 3章章 基本数据类型和基本运算基本数据类型和基本
2、运算 3.1数据类型及其派生类型数据类型及其派生类型数据类型数据类型数据结构中数据结构中数值集合数值集合及其上允许的及其上允许的操作操作。表。表3.1系统提供基本类型int 、float、double、char、bool、void派生类型(修饰符+基本类型)用户定义完全用户定义class、struct、union部分用户定义enum其他类型导出array、pointer、reference第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算3.1.1整型整型基本数据类型基本数据类型-整型整型类类别别类型标识符类型标识符类型类型字字节节表示范围表示范围有符号signed short in
3、t(简写为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)无符号长整型4042949672950000000000001010数值10第第3 3
4、章章 基本数据类型和基本运算基本数据类型和基本运算整型变量的使用整型变量的使用(1)变量必须“强制类型定义强制类型定义”。 如如: :intint a; a;longlong c; c; unsigned int unsigned int u;u;(2)变量在定义时,可以进行初始化。 如:如:int a=43;int a=43;(3)C+中变量的定义位置很灵活。定义整型变量并测试其占内存大小。定义整型变量并测试其占内存大小。例例 3.1整型数据的处理整型数据的处理第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算边学边练边学边练1利用短整变量计算利用短整变量计算32767与与10的和
5、,查看输出的和,查看输出结果,并思考为什么?结果,并思考为什么?提示:使用提示:使用short 定义短整变量定义短整变量。/* 参考程序参考程序 */#include void main() int a=43; short b=37; long sum=a+b; unsigned int u=5; coutsizeof(sum)endl; coutsizeof(long)endl; 第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算整型数据的处理整型数据的处理整型常量的使用整型常量的使用(1)十进制整数:直接使用即可。(2)八进制整数:以0开头。(3)十六进制整数:以0 x开头。(4
6、)整数后加l或L:以长整类型存储。使用不同进制的数使用不同进制的数例例 3.2第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算边学边练边学边练2输出十六进制输出十六进制12与八进制与八进制2的和,并测试常量所占的和,并测试常量所占内存大小。内存大小。提示:提示:0和和0 x sizeof() 第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算3.1.2浮点型浮点型基本数据类型基本数据类型-浮点型浮点型C+中有中有3种浮点类型:单精度(种浮点类型:单精度(float)、双精度)、双精度(double)和长双精度()和长双精度(long double)。)。C+中浮点数均为有
7、符号浮点数,没有无符号浮点数,表中浮点数均为有符号浮点数,没有无符号浮点数,表示精度满足下面的条件:单精度示精度满足下面的条件:单精度双精度双精度长双精度。长双精度。类型标识符类型字节精度可表示最大的绝对值float单精度型467位3.402823466E+38double双精度型815-16位1.7976931348623158E+308long double长双精度型81819位1.7976931348623158E+308第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算浮点型数据的处理浮点型数据的处理DEMO:13.5常量在内存占多大字节?13.5f呢?浮点型常量的使用浮点型
8、常量的使用例例 3.3(1)小数形式:如13.5,-0.123。(2)指数形式:如3 3e-3,0.3e-3,0.3E E-2-2。注意注意: :e或E前须有数字,e后指数须为整数。第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算浮点型数据的处理浮点型数据的处理浮点型变量的使用例例 3.4(1)float:单精度类型,占4字节,。(2)double:双精度类型,占8字节,。(3)long double:长双精度类型,占8字节,。第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算边学边练边学边练3编写程序计算机圆的面积并输出。编写程序计算机圆的面积并输出。提示:提示:圆周率
9、定义为圆周率定义为3.14159。 乘号使用乘号使用 * 计算公式:计算公式:s= r 2/* 参考程序参考程序 */#include void main() float pi,r; r=13.5; pi=3.14159e-1;第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算3.1.3字符型字符型基本数据类型基本数据类型-字符型字符型C+中有中有3种字符类型:字符型(种字符类型:字符型(char)、有符号字符型)、有符号字符型(signed char)和无符号字符型()和无符号字符型(unsigned char)。)。类型标识符类型字节表示范围char字符型1-128127/025
10、5signed char有符号字符型1-128127unsigned char无符号字符型10255字符型数据可以作为整型数据参与算术等运算。字符型数据可以作为整型数据参与算术等运算。a97第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算字符数据的处理字符数据的处理BB1010H 内存内存ab 6665如何输出单(双)引号?字符常量与字符串常量及字符变量的使用例例 3.5#include void main() char a,b; a=A; b=B;/b=B; couta和和b中的值为:中的值为:; couta,bC,B-D 字符常量字符常量A在内存中为字符编码在内存中为字符编码6
11、5 字符可以与数进行算术运算字符可以与数进行算术运算/参考代码参考代码#includevoid main() char a,b; a=A;b=a+1; coutabendl; cout(int)a(int)bendl; 第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算 3.1.4 布尔型与空值型布尔型与空值型布尔型(布尔型(bool)表示逻辑数据:表示逻辑数据:true和和false。1字节。字节。布尔型数据可以作为整型数据进行运算布尔型数据可以作为整型数据进行运算:true为整数为整数1,false为整数为整数0;整型数据也可以作为布尔型数据进行运算整型数据也可以作为布尔型数据进
12、行运算:非非0整数为整数为true,整数,整数0为为false。空值型(空值型(void)说明函数及其参数是否为空。说明函数及其参数是否为空。没有返回值的函数说明为没有返回值的函数说明为void类型的函数类型的函数没有参数的函数其形参表可以由没有参数的函数其形参表可以由void表示表示#includevoid main(void) couthello; #includevoid main() bool a=false,b=true; couta,b+4endl; coutfalse,trueendl;第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算3.2常量与变量解析常量与变量解析
13、求两个整数求两个整数(123+456)之和并输出。之和并输出。例例 3.7第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算程序执行过程解析程序执行过程解析a1231010H 1014H456579bsumCPU将将a和和b中的值送入中的值送入CPU计算并将结果返回计算并将结果返回sum中中显示器屏幕sum=579内存( RAM )运行SumApp.exe输出int a,b,sum;a=123;b=456;sum=a+b;coutsum=sum;第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算常量与变量的概念常量与变量的概念变量变量(Variable):内存中具有特定属性
14、的存储单元。程内存中具有特定属性的存储单元。程序运行时其内的数据可以被改变。序运行时其内的数据可以被改变。常量常量(Constant):程序运行时其内数据不能改变。:程序运行时其内数据不能改变。内存地址存储单元1010H 1014H内存:代码执行区内存:代码执行区123456579内存:代码存储区内存:代码存储区int a,b,sum;a=123;b=456;sum=a+b;coutsum=sum;a bsum存储的数据第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算特殊变量与常量特殊变量与常量常变量(常变量(Constant Variable)格式:格式:=;例如:例如:cons
15、t int N=200;符号常量符号常量 (Symbolic Constant ) 用一个标识符来代表。用一个标识符来代表。#define #define PRICE 10#includeVoid main() const float PI=3.14; float r,area; area=PI*r*r; coutarea=area;#include#define PI 3.14Void main() float r,area; area=PI*r*r; coutarea=area;第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算3.3运算符和表达式运算符和表达式运算符和表达式运算
16、符和表达式表示各种不同运算的符号称为表示各种不同运算的符号称为运算符运算符,被处理的数据,也,被处理的数据,也就是参与运算的数据称为就是参与运算的数据称为操作数操作数。而运算符与操作数组成。而运算符与操作数组成表达式表达式。一个表达式的类型是由运算符的种类和操作数的。一个表达式的类型是由运算符的种类和操作数的类型决定的类型决定的 。运算可分为单目运算、双目运算以及三目、多目运算。运算可分为单目运算、双目运算以及三目、多目运算。例如例如优先级优先级优先级是用来标志运算符在表达式中的运算顺序的。优先级是用来标志运算符在表达式中的运算顺序的。优先级相同的由结合性决定计算顺序。优先级相同的由结合性决定
17、计算顺序。结合性结合性结合性即结合方向是决定运算顺序的一种标志。结合性即结合方向是决定运算顺序的一种标志。从左到右,从右到左从左到右,从右到左-i a+b x0?-1:1 a+b*c a+b-c a=b=3 第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算1.算术运算符及其表达式算术运算符及其表达式基本算术运算符及其表达式基本算术运算符及其表达式算术运算符算术运算符单目运算符:单目运算符:+,-(正负号)(正负号)双目运算符:双目运算符:+, -, *, /, %(求余求余)结合方向:结合方向:从右向左从右向左,从左向右,从左向右优先级:优先级:+-(正负正负) * / % + -
18、算术表达式算术表达式是指由算术运算符、括是指由算术运算符、括号将常量、变量、函数、圆括号等号将常量、变量、函数、圆括号等连接形成的一个有意义的式子。连接形成的一个有意义的式子。(2*x-3)*x+2)*x)-5 或或 3*sqrt(x)例:例:cout5/2; cout5/2.0;例例 :5%2= ? -5%2= ? 5%-2= ? 5.5%2= ? 第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算1.算术运算符及其表达式算术运算符及其表达式自增和自减运算符自增和自减运算符 及其表达式及其表达式作用使变量的值增作用使变量的值增1或减或减1 。种类:种类:前置前置 +i,-i (先执
19、行先执行i=i+1或或i=i-1,再使用,再使用i值作为表达式的值)值作为表达式的值)后置后置 i+,i- (先使用先使用i值做为表达式的值,再执行值做为表达式的值,再执行i=i+1或或i=i-1)#include void main() int a=10; couta+endl; cout+aendl; int b=11; cout-bendl; coutb-endl; 第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算1.算术运算符和表达式算术运算符和表达式自增和自减运算符说明:自增和自减运算符说明: + - 不能用于常量和表达式不能用于常量和表达式如如5+,(a+b)+ - 结
20、合方向:自右向左结合方向:自右向左优先级:优先级:+ - 与与 + - 同级同级#includevoid main()int i; i=2;cout-i+;/(-i)+? -(i+) ? i=3;cout+ii;/ 43? 44? i=3;cout , = , , = , = , !=由关系运算符连接形成的由关系运算符连接形成的表达式为表达式为关系表达式关系表达式。关系表达式的值是一个逻辑值关系表达式的值是一个逻辑值(真真时时值为值为1,假时值为,假时值为0)。如:设如:设int a=1,b=20,c=3,则,则a10)&逻辑与(i1) & (ic) ?(ab)|!(ac) ?
21、-9d-1 ? -9d&d-1 ?第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算3.逻辑运算符和表达式逻辑运算符和表达式应用应用“短路计算法短路计算法” :在逻辑表达式的求值过程中,并不是所:在逻辑表达式的求值过程中,并不是所有的逻辑运算符都被执行,只是在必须执行下一个逻辑运有的逻辑运算符都被执行,只是在必须执行下一个逻辑运算符才能求出表达式的值时,才执行该运算符。算符才能求出表达式的值时,才执行该运算符。如表达式如表达式 a & b &c a | b|c #includevoid main() int i=10,j=1,k=1; i & (j=0
22、) & (+k); / ? coutk; /?第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算4.位运算符及其表达式位运算符及其表达式逻辑位运算符逻辑位运算符运算符包括运算符包括按位与按位与&相应位都是相应位都是1,则该位,则该位结果结果为为1,否则为,否则为0;按位或按位或 |相应位只要有相应位只要有1,则该位,则该位结果结果为为1,否则为,否则为0;按位异或按位异或 相应位不同,则该位结果为相应位不同,则该位结果为1,否则为,否则为0;按位取反按位取反将运算量的每一位取反。将运算量的每一位取反。例:例:unsigned char a=37,b=44; a=37
23、b=44 a的值 b的值 a&b的值 a|b的值 ab的值 第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算4.位运算符及其表达式位运算符及其表达式移位运算符移位运算符移移位运算的运算规则位运算的运算规则按位左移按位左移向右移动指定的位数,向右移动指定的位数,空出的位补空出的位补0或补符号位。或补符号位。例如:例如:char a=37,b=44; a=37b=44a1#include#includeusing namespace std;void main()char a=37,b=44;coutbitset(a1)endl;coutbitset(b1)endl;第第3 3
24、章章 基本数据类型和基本运算基本数据类型和基本运算5.赋值运算符和表达式赋值运算符和表达式赋值运算符和赋值表达式赋值运算符和赋值表达式赋值运算符(赋值运算符( )的功能将某个数据的值赋给某个变量。)的功能将某个数据的值赋给某个变量。复合赋值运算符复合赋值运算符+=、-=、*=、/=、%=&=、|=、=、= 可进行可进行类型转换类型转换。被赋值目标。被赋值目标(赋值运算符左赋值运算符左值值)必须是变量,不能是常量或表达式。必须是变量,不能是常量或表达式。int x; x=10.6; x=A;float a; a=x; x-=a+5;/x=x-(a+5);char c=x; c&=
25、10;c=2; 第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算6.其他运算符及表达式其他运算符及表达式条件运算符条件运算符三目运算符三目运算符“ ? :”,一般形式:,一般形式:表达式表达式1?表达式表达式2 :表达式表达式3int a=3,b=4; coutb?a:b); 逗号运算符逗号运算符逗号运算符的运算优先级是最低的。一般形式:逗号运算符的运算优先级是最低的。一般形式:表达式表达式1,表达式表达式2,表达式表达式nint a=3,b=4;cout(a+,b+,a+b); /9 ? 7 ?couta+,b+,a+b;第第3 3章章 基本数据类型和基本运算基本数据类型和基本运
26、算6.其他运算符及表达式其他运算符及表达式指针指针(取值取值*和取址和取址&运算符运算符)指针指针(Point):一个无符号整数,表示内存地址。:一个无符号整数,表示内存地址。定义一个指针类型的变量:定义一个指针类型的变量:类型类型 * 指针变量名指针变量名;数据类型、运算符和表达式数据类型、运算符和表达式int *p,a=3;p=&a;cout*pa; 引用引用 引用:引用:(Reference)别名机制别名机制。 定义一个引用定义一个引用:类型类型& 引用名引用名;int a=3,&r;r=a;coutar;1010H1011H内存内存pa1011H3101
27、3H内存内存a3r第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算6.其他运算符及表达式其他运算符及表达式函数调用运算符函数调用运算符 ( )功能:调用函数,执行函数体中的语句。功能:调用函数,执行函数体中的语句。格式:函数名格式:函数名 ( 参数列表参数列表 )数据类型、运算符和表达式数据类型、运算符和表达式int add(int x,int y);int z;z=add(5,5); 动态分配动态分配运算符运算符 new delete new功能:生成无名动态变量,仅返回变量地址功能:生成无名动态变量,仅返回变量地址(指针指针)。 Delete功能功能:释放生成的无名变量所占用的
28、空间。释放生成的无名变量所占用的空间。int *p;p=new int(1);*p=2;cout*p;delete p;int add(int x,int y)return x+y;1013H内存内存1p第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算7.运算符的优先级与结合性运算符的优先级与结合性运算符的优先级与结合性运算符的优先级与结合性为便于记忆可参考下面提供的记忆方法:为便于记忆可参考下面提供的记忆方法:单目双目三目算术关系逻辑移位逻辑位右结合性(从右到左):单目、三目和赋值。左结合性(从左到右):按人们习惯的计算顺序。赋值逗号第第3 3章章 基本数据类型和基本运算基本数据类型和基本运算3.4 复合数据类型复合数据类型-枚举类型枚举类型枚举类型:将常数数值与标识名称关联在一起。枚举类型:将常数数值与标识名称关联在一起。定义格式:定义格式:enum 枚举类型名枚举类型名 成员列表成员列表 变量列表;变量列表;注意:成员列表为标识名称集合,并对应于整数值。注意:成员列表为标识名称集合,并对应于整数值。#includeenum colorred,green,blue;void main(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 微电影制作合同协议书
- 企业人员聘用合同
- 承包合同企业承包经营合同
- 经济法合同管理专题练习题
- 开心果采购合同书
- 喷锚分项工程劳务分包合同
- 运输砂石合同范本简单
- 小区物业出售合同范本
- 工会代理合同范本
- (12)-小升初语文专题练习
- 班组级安全教育培训内容
- 2025年河南工业职业技术学院单招职业技能测试题库及参考答案
- 《传奇歌后邓紫棋》课件
- 南山智造(红花岭基地)城市更新项目(一期)设计采购施工总承包(EPC)技术标
- 钢纤维混凝土结构的侵爆复合破坏效应
- 2025年度农业补贴补偿合同范本3篇
- 《无人机操控培训材料》课件
- 化工厂节能降耗培训
- 2024年长春汽车职业技术大学单招职业技能测试题库标准卷
- 2025版科技创新合伙人股权期权激励与业绩考核协议3篇
- DB33T 1141-2017 保温装饰夹心板外墙外保温系统应用技术规程
评论
0/150
提交评论