class02变量、常量和数据类型.ppt
《class02变量、常量和数据类型.ppt》由会员分享,可在线阅读,更多相关《class02变量、常量和数据类型.ppt(52页珍藏版)》请在三一办公上搜索。
1、,面向对象程序设计与实践,第2课变量、常量和数据类型,主讲人:杨峰,Page 1,本课主要内容,变量的概念变量类型变量的输入和输出变量的赋值与初始化常量和字面量,Page 2,1 变量的基本概念,1.1 什么是变量?(重要的基础(o)!),对象(Object)一个对象是内存中的一片区域,这个对象对应一个类型(type)类型不同,这片区域的大小就不同 一个有名字的对象就是变量(variable)存储在这个区域中的数就是变量的值(value)向程序中引入一个变量名称的语句称为变量的声明语句(declaration statement),double srcVoltage;,该语句声明了一个名称为s
2、rcVoltage的变量,该语句同时为变量srcVoltage分配了8个字节的内存空间,这种声明称为变量定义(definition),int ResistTotal=3;,变量定义时可以同时提供变量的初始值,该语句定义了一个名称为ResistTotal的整型变量,初始值为3。,Page 3,1.2 变量的3个特性,特性1:名字(Identifer,标识符)名字由字母,数字,下划线组成,只能由字母或下划线开头(不能用数字开头哦)C+的名字大小写敏感(Num和num是不同的两个名字),Page 4,1.2 变量的3个特性,名字建议的命名规范变量名要有描述性,能指明变量的作用变量的命名风格有2种全小
3、写,下划线分隔,如line_total大小写混排,小写开头,不用下划线,如srcVoltage,resistTotal。下划线开头的变量名一般用于库函数,应用编程中变量名不要用下划线开头。变量名中最好不要用数字,也不要用单个的l做变量名,因为多数屏幕字体很难区分l和1.变量定义的位置:与K&R C 不同,C+建议需要用时才定义变量,而不建议都在函数前部提前定义。相同类型的变量虽然可以放在一行,用逗号分隔,但是建议各占一行,如srcVoltage的定义。,Page 5,1.2 变量的3个特性,特性2:类型(type),Page 6,1 变量的基本概念,类型(type)整型是可以用二进制精确表示的
4、数据类型 char型占1个字节的内存空间 以二进制数表示字符的ASCII码值(什么意思嘛(_)?)unsigned char型 值范围0255(即28-1)char型-128127(最高位为符号位,该位为1表示负数),Page 7,1 变量的基本概念,类型(type)整型是可以用二进制精确表示的数据类型 int型short,int,long,long long shortintlong,32位系统中short 16位(2字节),int 32位(4字节),long 32位(4字节),long long 64位(8字节)unsigned int就表示0232-1,即4G,Page 8,1 变量的基
5、本概念,二进制进制换算110102进制-10进制 1*24+1*23+0*22+1*21+0*20=26 10进制-2进制 26-11010字节Byte:8个二进制位(bit)字word:2个字节称为一个word,一个word也就是两个字节,16个二进制位。八进制 01234567 11010-32oct16进制 0123456789ABCDEF 11010-1Ahex,Page 9,1 变量的基本概念,类型(type)整型是可以用二进制精确表示的数据类型 bool型C+增加的类型,特有。true/false 1个字节,Page 10,1 变量的基本概念,类型(type)整型是可以用二进制精确
6、表示的数据类型 枚举型是整型常量的一个列表,enum Color RED,BLUE,GREEN,YELLOW,WHITE,BLACK,MAGENTA,CYAN;,则RED对应0,BLUE对应1,依此类推。也可以同时指定每个常量的值:(自动的咯(v)嗯?),enum escapes BELL=a,BACKSPACE=b,TAB=t,NEWLINE=n,VTAB=v,RETURN=r;(这种写的方式(o)!),也可以只给定第一个值:,enum months JAN=1,FEB,MAR,APR,MAY,JUN,JUL,AUG,SEP,OCT,NOV,DEC;(然后咧?),Page 11,1 变量的基
7、本概念,类型(type)浮点型是二进制不能精确表示的数据类型 浮点型分float,double,long double在内存中按 IEEE 754标准规定的二进制格式存放浮点数。float占4个字节,double 8个字节,long double没有规定,只要大于等于double即可,VC中是12个字节 float能表示的最小实数约10-7,double能表示的最小实数约10-15 对于除0,或0/0,结果是NaN(Not a Number),1 变量的基本概念,类型(type)string类型 为了方便操作字符串,C+在标准库中提供了一个字符串数据类型string(嘛(v)?),Page 1
8、2,string prompt=请输入电压值:;cout prompt;,Page 13,1 变量的基本概念,类型(type)typedef语句 typedef语句声明一个新的类型名字 typedef的作用是给一个已有的数据类型一个别名,通常是为了更简明和清晰,typedef unsigned char BYTE;typedef unsigned short WORD;typedef long long INT64;,Page 14,1.2 变量的3个特性,特性3:值(value)用赋值运算符=为变量赋值(assign value)赋值就是将值value保存到该变量对应的内存区域 srcVol
9、tage=3.0;,将数值3.0存放到srcVoltage所占用的8个字节的内存中。变量在赋值或初始化以前,存放在对应内存中的值是一个垃圾值。,赋值时要防止超范围的回绕。比如一个unsigned short变量,可以表示065535的整数,如果给它赋值65537,超出范围就会回绕到1。,Page 15,1.3 变量的输入和输出,数值变量的输入输出 C+的变量输出 将变量的值输出到屏幕通过标准输出流cout实现,cout srcVoltage;,将变量srcVoltage的值输出到屏幕上。为了更清楚的表示输出的含义,增加一些描述的字符串:,cout 电压源电压=srcVoltage endl;,
10、这里用双引号包围的字符串称为字符串字面量。endl表示输出一个回车换行符。,Page 16,1.3 变量的输入和输出,数值变量的输入输出 C+的变量输入 变量的输入通过cin标准输入流实现,cin r1;,从键盘读入变量r1的值。要求用户输入之前,应该给出提示:,cout 请输入3个电阻值;,变量也可以连续输入:,cin r1 r2 r3;,从键盘读入3个数,第一个数赋给r1,第二个数赋给r2,第3个数赋给r3注意输入的3个数之间需要用空格分隔,不能用,分隔,还要注意输入的数值与变量类型要匹配。如本例中3个变量都是浮点数,所以应输入 1.02.03.0这样的序列。如果3个变量都是整型,就应输入
11、123这样的序列。如果不匹配,读入到变量的值就不正确。,Page 17,1.3 变量的输入和输出,数值变量的输入输出 C+的变量输入,/显示用户输入的数据cout 计算输入条件:endl;cout 电压源电压=srcVoltage endl;cout 电阻值r1=r1 r2=r2 r3=r3 endl;,接收数据以后,一般都需要把得到的变量值显示出来,以确保变量得到的正确的值:,Page 18,1.3 变量的输入和输出,数值变量的输入输出 C的变量输出 C语言的输出通过printf函数实现,printf(电压源电压=%fn,srcVoltage);,输出浮点型变量代码如下:,第一个字符串称为格
12、式串,控制输出显示的格式。格式串包括2部分内容,普通字符和转换说明符。普通字符在输出时原封不动的输出到屏幕上;转换说明符(conversion specifications)以%开头,说明从第2个参数及以后的参数如何输出到屏幕上。这里的%f表示把第2个参数srcVoltage以浮点数的形式输出。该代码输出的效果与前面C+的输出代码效果相同。,Page 19,1.3 变量的输入和输出,数值变量的输入输出 C的变量输出 C语言(不是C+()/啦啦啦)的输出通过printf函数实现,printf(r1=%f r2=%f r3=%fn,r1,r2,r3);,printf是个很特别的函数,它可以带可变数
13、目的参数。如果要同时输出多个变量值,可以带更多的参数,比如输出3个电阻值,代码如下:,如果要输出整型变量,转换说明符为%d,printf(resistTotal=%dn,resistTotal);,Page 20,1.3 变量的输入和输出,数值变量的输入输出 C的变量输出,与C+的标准输出流相比,printf既有优点也有缺点。缺点:printf无法检查数据类型,如果一个浮点型变量却对应了一个%d(整型)的说明符,输出就会出现错误,由于是可变参数,printf也无法检查参数个数是否正确,如果只有3个待显示的参数,却写了4个转换说明符,程序几乎立刻就会宕掉。优点:控制输出格式比cout要方便。结论
14、:cout能提供更好的类型检查,建议使用cout。,Page 21,1.3 变量的输入和输出,数值变量的输入输出 C的变量输入 C语言的输入通过scanf函数实现,scanf(%lf%lf%lf,scanf函数的使用方法与printf类似,也是可变参数的函数,第一个参数为格式串,后面的参数为待取值的变量,比如要获取3个电阻值,代码如下:,注意:对double型变量,printf使用%f,而scanf必须使用%lf,%f只能用于float型变量,如果用于double型变量,会得到错误的输入结果。所有待输入的参数前面必须加&号,Page 22,1.3 变量的输入和输出,数值变量的输入输出 C的变量
15、输入,scanf(r1=%lf r2=%lf,r3=%lf,格式串中的普通文本没有什么用,比如,如果在键盘输入 12 13 14只会得到错误的结果。要得到正确的结果,必须键入 r1=12 r2=13,r3=14(手工键入所有这些字符,简直是自找麻烦),scanf(%lf,%lf,%lf,表示以,作为分隔符,应输入12,13,14。相比之下,cin只能以空格作为分隔符,结论:scanf是很脆弱的函数,很容易出错,更不能进行类型与参数个数检查,所以建议不要使用,C+程序应使用标准输入流cin,Page 23,1.3 变量的输入和输出,字符变量的输入输出 C+的字符输出 与数值变量相同,用标准输出流
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- class02 变量 常量 数据类型

链接地址:https://www.31ppt.com/p-6503117.html