第2章数据表达与程序流程控制.ppt
《第2章数据表达与程序流程控制.ppt》由会员分享,可在线阅读,更多相关《第2章数据表达与程序流程控制.ppt(79页珍藏版)》请在三一文库上搜索。
1、第2章数据表达与程序流程控制,简单对象的声明与使用,运算符,表达式,语句,预定义数据类型,数据的存储:存储空间分配和数据输入,数据的处理,结果数据的输出,函数,2.1 内部预定义类型,存储器组织 编译过的程序和数据都存储在计算机的存储器中。计算机的存储器按字节(Byte)编址,0xFFFFF0,0xFFFFF1,存储单元地址,内容,存储单元中的内容可以经常变化的。而地址相对不变。,字长 一台计算机用来表示一个整数(int)所需的字节数。字长一定,这台计算机中能表示的整数范围就确定。比如字长为4(即32位)的机器中,无符号整数(unsigned int)表示范围:04294967295。 000
2、00000 00000000 00000000 00000000=0 00000000 00000000 00000000 00000001=1 00000000 00000000 00000000 00000010=2 00000000 00000000 00000000 00000011=3 11111111 11111111 11111111 11111111= 232-1=4294967295,一个数据存储在计算机中: 从哪个地址开始?占用几个字节?,01000001,A在机器中的表示,预定义基本数据类型:程序设计语言事先定义好,供程序员直接使用,不同类型的数据在内存中所占用的字节数不
3、同,内部预定义或简单对象,通常用来表示复杂对象的属性。,C+的基本数据类型,基本类型 整型 短整型(short int) 整型(int) 长整型(long int) 字符型(char) 浮点型 单精度型(float) 双精度型(double) 长双精度型(long double),基本类型 布尔型(bool) 构造类型 枚举类型(enum) 数组类型 结构体类型(struct) 共用体类型(union) 类类型(class) 指针类型 引用类型 空类型(void),数据类型,C+并没有统一规定各类数据的精度、数值范围和在内存中所占的字节数,各C+编译系统根据自己的情况作出安排。 For exa
4、mle:ch1/1-1.cpp,2.2 简单对象的声明与使用,任何对象,先声明,后读写,在高级语言中,通常不直接用存储器地址来标识存储空间,而用变量来表示,如: int number; /声明一个整型变量,变量名为number number = 1; /变量number的内容为1 number = 2; /变量number的内容可以覆盖 char ch; ch = A; ch = a;,标识符和关键字,对象名技术上称为”标识符”,C+语言的标识符规定由字母、数字以及下划线组成,且第一个字符必须是字母或下划线。 保留字(关键字): 它们是C+语言规定的、赋予它们以特定含义、有专门用途的标识符。比
5、如: int、if、for等。,常量,在程序中不变的值。如: x = x + 123; 常量的值是不能改变的,一般从其字面形式即可判别是否为常量。常量包括两大类,即数值型常量(即常数)和字符型常量。如: 整型常量: 123 缺省为int型,十进制 0173 八进制的int型 0x53 十六进制的int型 123L(或123l) 为long int的十进制,字符常量: A 字符常量用单引号扩起来的单个字符。在内存中以ASCII码存储。故可以: int i = a; char ch = 97; ch = ch + 1;,字符常量-特殊打印字符: n 换行符 r 回到本行开始处 t 水平制表符 0
6、空字符 For exapme: ch1/1-2.cpp,字符串常量: “A” 字符 串常量用双引号扩起来的一系列字符。字符串在内存中总是以0空字符结束。,01100101,“A”在内存中的表示,0,实型常量: 4.6,-1.23 为double型十进制常量; .23 23. 47e-4 科学表示法 47*10-4 67.F(或67.f) 为float型十进制常量,C+的数据包括常量与变量,常量与变量都具有类型。由以上这些基本数据类型构成更复杂的数据结构_对象。比如: Washer , IceBox。,Class student private: int number; string name;
7、 string sex; string speciality; grade double; ;,例2.1:下面的程序用公式 C = (5/9) (F-3 2 ) 打印华氏温度与摄氏温度对照表: 0 -17 20 -6 40 4 60 15 Example 2,变量的声明与使用 在C+语言中,所有变量都必须先说明后使用。说明用于声明变量的性质(大小和操作),它由一个类型名与若干所要说明的变量组成,例如: int Fahrenheit,celsius; Fahrenheit = 10; 变量的赋值 int a=10; cina; 变量的输出 cout a;,2.3 运算符,算术运算符 + 单目正,
8、 +a - 单目负, -a + 二目加, a+b - 二目减, a-b * 二目乘, a*b / 对于两个整数,取整,如: 1/3=0 对于浮点数,就是普通除法 % 表达式x % y的结果是x除以y的余数,当y能整除x时,x % y的结果为0。,+ 增1运算 - 减1运算 例:int n=3,k; k = +n; /前缀增1,先加1后使用,k=4,n=4 k = n+;/后缀增1,先使用后加1 ,k=3,n=4 n=3; k = -n; /前缀减1,先减1后使用,k=2,n=2 k = n-;/后缀减1,先使用后减1 ,k=3,n=2,算术运算符的优先级和结合性,单目 + - + - 双目 *
9、 / % 双目 + -,右结合(从右向左),-5 + 3%2 = (-5) + (3%2) = -4 3 * 5 % 3 = (3*5) % 3 = 0 -i+,-(i+),左结合,关系运算符 比较两个操作数,比较的结果:真(true) 假(false) 大于 = 大于等于 小于 = 小于等于 = 恒等于 != 不等于,在C+中真与假的处理: 1)bool类型 bool a; a=false;/在内存中,假表现为0 a=true;/在内存中,真表现为1,int a=1,b=2,c; c=(ab); For example: ch2/2-8.cpp,逻辑运算符 & 逻辑与 (ab) & (cd)
10、 | 逻辑或 (ab) | (cd) ! 逻辑非 !a,表达式:由运算符和运算对象(操作数)组成的有意义的运算式子,它的值和类型由参加运算的运算符和运算对象决定。 运算符:具有运算功能的符号 运算对象:常量、变量和函数等表达式.,2.4 表达式,在表达式中常遇到不同类型数据之间进行运算,如 10+a+1.5-8765.1234*b 在进行运算时,不同类型的数据要先转换成同一类型,然后进行运算。转换的规则按图所示。,2.4.1 表达式中各类数值型数据间的混合运算,水平方向:自动 垂直方向:低 高,A + 12 10.05 65 77 66.95,自动类型转换(赋值运算),变量 表达式 计算赋值运
11、算符右侧表达式的值 将赋值运算符右侧表达式的值赋给左侧的变量,将赋值运算符右侧表达式的类型 自动转换成 赋值号左侧变量的类型,自动类型转换(赋值运算),double x; x = 1;,x = ?,short a = 1000; char b = A; long c; c = a + b;,c = ?,int ai; ai = 2.56;,ai = ?,short bi; bi = 0x12345678L,bi = ?,强制类型转换,强制类型转换运算符 (类型名) 表达式 (double)3 (int)3.8 (double)(5/2) (double)5/2,3.0 3 2.0 2.5,算术
12、表达式、赋值表达式、关系表达式、逻辑表达式、条件表达式和逗号表达式等,2.4.2 各种表达式,算术表达式,例 数学式 C/C+表达式 s(s-a)(s-b)(s-c) (x+2)e2x,s*(s-a)*(s-b)*(s-c),(x+2)*exp(2*x),赋值表达式,赋值运算符 = x = 3*4; 优先级较低,结合性从右向左 x = y = 3; 等价于,x = (y = 3);,复合赋值运算符,赋值运算符 简单赋值运算符 = 复合赋值运算符 复合算术赋值运算符 += -= *= /= %= 复合位赋值运算符 赋值表达式: 变量 赋值运算符 表达式 x += exp ;等价于 x = x +
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 表达 程序 流程 控制
链接地址:https://www.31doc.com/p-2252410.html