




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
会计学1cchap数据类型和表达式本章主要内容C++的数据类型
C++的常量
C++的变量
C++中的各种运算符和表达式2第1页/共46页1.
C++的数据类型数据类型是数据存在的一种形式,C++可以使用的数据类型包括:3构造类型第2页/共46页1.
C++的数据类型4见书P19不仅与操作系统有关,还与编译器有关第3页/共46页1.
C++的数据类型C++的数据通常以“常量”或“变量”的形式表现出来,因此,常量和变量都具有类型。C++允许用户根据需要构造自己的数据类型,称为自定义数据类型或派生类型。如:数组、指针、结构、枚举和类等类型。5第4页/共46页2.常量常量是指在程序中不能改变的量。当用符号来表示常量时,称为符号常量。常量也区分不同的类型。如:30,40为整型,30.0,40.0为实型,编辑器只是根据其表面形式来判断其类型。(和C语言中的常量表示相同)6第5页/共46页2.常量C++的常量有以下几种:(1)整型常量十进制整型常量八进制整型常量十六进制整型常量7可在整数字面值后加U或L(u或l),用来表示无符号整数或长整型0123//8进制以0开头的数字序列0x12af3//16进制以0x开头的数字序列12345//10进制以非0数字开头的数字序列第6页/共46页2.常量超过表示范围的整型数其值不可预料或者出错。如8inta=12345678912345678912345;//对吗?unsignedintx=-43;//对吗?第7页/共46页2.常量(2)浮点型常量十进制浮点数表示:定点表示科学记数法表示法例如:123.51.235e+29尾数部分的绝对值要大于1,小于10第8页/共46页2.常量C++规定浮点数常量默认为双精度(double)型,如果在浮点数后面加字母f或F,表示为float类型;如果在浮点数后面加字母l或L,表示为长双精度类型。例如:120.1,1.201e+02为double型
0.013f,1.3e-02f为float型10第9页/共46页2.常量(3)字符常量普通的字符常量:单引号括起的一个字符转义字符常量:也称非打印字符,一般是以‘\’开始的一种表示形式。
例如:\n,\t……11第10页/共46页2.常量字符常量在内存中的存储形式及其使用方法12由于在内存中的形式与整型数据相同,所以,可以直接用其整型值给变量c1、c2赋值。第11页/共46页2.常量#include<iostream>usingnamespacestd;voidmain(void){chara,b;a=‘A’;//输入ASCII码
b=65;//输入十进制数
cout<<"a="<<a<<endl;cout<<"b="<<b<<endl;}#include<iostream>usingnamespacestd;voidmain(void){inta=65;charb=65;cout<<a<<“\n”;cout<<b<<“\n”;}1301000001a,b在内存中的表示均是相同的运行结果:a=AB=A运行结果:65A注意:一定要按照定义的类型输出第12页/共46页2.常量#include<iostream>usingnamespacestd;voidmain(void){charc1,c2,c3,c4;charn1,n2;c1='a'; //字符常量
c2=97; //十进制
c3='\x61'; //转义字符
c4=0141; //八进制
cout<<"c1="<<c1<<'\t'<<"c2="<<c2<<endl;cout<<"c3="<<c3<<'\t'<<"c4="<<c4<<endl;n1=‘\n’;//转义字符:回车
n2=‘\t’;//转义字符:下一个输出区(Tab)cout<<"使用转义字符\n";cout<<"c1="<<c1<<n2<<"c2="<<c2<<n1;cout<<"c3="<<c3<<n2<<"c4="<<c4<<n1;}14输出:c1=ac2=ac3=ac4=a使用转义字符c1=ac2=ac3=ac4=a第13页/共46页2.常量(4)字符串常量是由一对双引号括起的字符序列。字符串常量可由任何字符组成,在内存中顺序存放,并以‘\0’作为结束标志。例如:“CHINA”其内存的存放形式为:15CHINA\0第14页/共46页2.常量16字符串“CHINA”十六进制和二进制的内存存放形式:0x430x480x490x550x41\0010000110100100001001001010101010100000100000000单字符N的ASCII码的十六进制单字符N的ASCII码的二进制第15页/共46页2.常量(5)符号常量符号常量就是使用一个标识符来表示某个常量值。在C++中有二种定义方法,一种是使用编译预处理指令define;另一种是使用C++的常量说明符const。17第16页/共46页2.常量方法1:#definePI3.1415926//在程序中凡是出现PI的均用3.1415926替代或者方法2:constfloatpi=3.1415926;//将变量pi定义为常量18一般用大写字母第17页/共46页2.常量#include<iostream>usingnamespacestd;#definePI3.14159#defineS"China"voidmain(void){constdoublepi=3.14159;//变量作为常量使用
cout<<"PI="<<PI<<endl;cout<<"10*PI="<<10*PI<<endl;cout<<S<<endl;//PI=PI+3;//pi=pi+4;cout<<"PI="<<PI<<endl;cout<<"pi="<<pi<<endl;}19输出:PI=3.1415910*PI=31.4159ChinaPI=3.14159pi=3.14159第18页/共46页练习下列常量的表示在C++中是否合法?若不合法,指出原因;若合法,则指出常量的数据类型。
20红色的为正确的35u1.25e3.4 3L“ComputerSystem”“a”‘a’"yes"orNo"-.567f35u1.25e3.4 3L“ComputerSystem”“a”‘a’"yes"orNo"-.567f第19页/共46页练习在下列表示十六进制int型常量中,错误的是A)0X1b B)2fx C)
0xaf D)0xae21B第20页/共46页3.变量在程序的执行过程中,其值可以改变的量称为变量。变量名必须用标识符来标识。变量根据其取值的不同值域,分为不同类型的变量:整型变量、实型变量、字符型变量、结构型变量、指针型变量等等。22第21页/共46页3.变量对于任一变量,编译程序要为其分配若干个字节(连续的)的内存单元,以便保存变量的取值。例如:inta=3;23第22页/共46页3.变量当要改变一个变量的值时,就是把变量的新的取值存放到为该变量所分配的内存单元中;用到一个变量的值时,就是从该内存单元中取出数据。不管什么类型的变量,通常均是变量的说明在前,使用变量在后。24第23页/共46页3.变量变量赋初值inta=4;//定义语句,在开辟空间后马上为空间赋值
a=6;//重新为该空间赋值25a46第24页/共46页3.变量例如:……inti=2,j=3;i=i+j;j=i+j;i=i-j;j=i*j;cout<<“i=”<<i<<“\n”<<“j=”<<j<<endl;……26第25页/共46页4.C++运算符C++运算符包括:算术运算关系运算逻辑运算位运算赋值运算符条件运算符逗号运算符指针运算符(*)引用运算符和地址运算符(&)求字节数运算符强制转换运算符成员运算符指向成员的运算符下标运算符其他(如函数调用运算符())27见书:P30与C的使用方法大致相同第26页/共46页4.C++运算符在算术运算中,注意:表达式中各类数值数据间的混合运算28第27页/共46页有关各运算符的练习1.如果有如下类型说明语句charw;intx;floaty;doublez;则表达式w*x+z-y的结果为()类型。A)float B)double C)int D)char29√第28页/共46页4.C++运算符自增(++)和自减(--)运算符强制类型转换运算符30第29页/共46页有关各运算符的练习2.在下列选项中,与k=n++;语句功能完全等价的表达式是()A)k=n,n=n+1 B)n=n+1,k=n C)k=++n D)k+=n+131运行结果:A第30页/共46页有关各运算符的练习3.以下程序的运行结果是:#include"iostream"usingnamespacestd;voidmain(){intx=3,y=2;doublea=3.5,b=2.5;cout<<(x+y)%2+(int)a/(int)b<<endl;}32运行结果:2第31页/共46页有关各运算符的练习4.设x和y均为int型变量,则以下语句:
x+=y;y=x-y;x-=y;的功能是()。A)把x和y按从大到小排列
B)无确定结果C)把x和y按从小到大排列
D)交换x和y中的值33√第32页/共46页有关各运算符的练习5.设inti=1,j=2;表达式++i+j的值为()。
A)1B)2C)3D)434√第33页/共46页有关各运算符的练习6.设inta=5,b=6,c=7,d=8,m=2,n=2;表达式(m=a<b)&(n=c>d)的值为()。
A)2B)3C)1D)035√第34页/共46页有关各运算符的练习7.设a为整型变量,不能正确表达数学关系:10<a<15的C语言表达式是()。
A)10<a<15B)a==11||a==12||a==13||a==14C)a>10&&a<15D)!(a<=10)&&!(a>=15)36√第35页/共46页有关各运算符的练习8.设x、y、z、s均为int型变量,且初值均为1,则执行语句s=++x||++y&&++z;后,s的值为()。
A)不定值
B)2C)1D)037√第36页/共46页有关各运算符的练习9.以下程序的运行结果是:#include"iostream"usingnamespacestd;voidmain(){inta=010,b=0x10,c=10;cout<<a<<b<<c<<endl;}38运行结果:81610第37页/共46页有关各运算符的练习10.若有定义inta=12,则表达式a+=a-=a的值为()。A) 0
B)2
C)
10
D)1211.若已经定义intx=5.5,y;则表达式y=2.75+x/2的值是()。A)5.5 B)5 C)4 D)4.039√√第38页/共46页有关各运算符的练习12.执行下列语句后,输出结果是()#include"iostream"usingnamespacestd;voidmain(){intc=5;cout<<(c+=2,c+8,++c)<<endl;}40运行结果:8第39页/共46页有关各运算符的练习13.当A的值为
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 酒店服务实习报告范文
- 湘艺版二年级下册音乐 第二课 (演唱)粗心的小画家 教案
- 全球化视角下的医疗科技-以高效液相色谱的跨国合作与交流为例
- 智慧城市的数字孪生技术应用研究
- 中职新生入学课件
- 未来学校基于教育大数据的教学变革
- 2025届福建福州市物理高二第二学期期末联考试题含解析
- 进度款的支付流程与计算
- 江苏省沭阳县华冲高级中学2025年物理高二下期末质量检测试题含解析
- 中职教育的中国历史课件
- GB/T 700-2006碳素结构钢
- GB/T 41419-2022数字化试衣虚拟人体用术语和定义
- GB/T 24218.1-2009纺织品非织造布试验方法第1部分:单位面积质量的测定
- GB/T 1633-2000热塑性塑料维卡软化温度(VST)的测定
- 《病毒学》(研究生)全册配套完整课件
- 第十七章其他熔化焊接与热切割作业课件
- 手术讲解模板:肩关节全部置换术课件
- 腧穴总论 2特定穴课件
- 数显压力表说明书
- JJF 1255-2010 厚度表校准规范-(高清现行)
- DB4409∕T 06-2019 地理标志产品 化橘红
评论
0/150
提交评论