第2章数据的存储与运算剖析

上传人:今*** 文档编号:106888779 上传时间:2019-10-16 格式:PPT 页数:86 大小:1.72MB
返回 下载 相关 举报
第2章数据的存储与运算剖析_第1页
第1页 / 共86页
第2章数据的存储与运算剖析_第2页
第2页 / 共86页
第2章数据的存储与运算剖析_第3页
第3页 / 共86页
第2章数据的存储与运算剖析_第4页
第4页 / 共86页
第2章数据的存储与运算剖析_第5页
第5页 / 共86页
点击查看更多>>
资源描述

《第2章数据的存储与运算剖析》由会员分享,可在线阅读,更多相关《第2章数据的存储与运算剖析(86页珍藏版)》请在金锄头文库上搜索。

1、第2章 数据的存储与运算,2.1 数据在计算机中是怎样存储的 2.2 整型数据的运算与分析 2.3 实型数据的运算与分析 2.4 字符型数据的运算 2.5 符号常量 2.6 算术运算符和算术表达式 2.7 C运算符和C表达式 2.8 提高部分,2.1 数据在计算机中是怎样存储的,2.1.1 数据在计算机中是以二进制形式存储的 2.1.2 位、字节和地址 2.1.3 不同类型数据的存储方式,P16,计算机内部的信息都是用二进制表示 计算机存储器是用半导体集成电路构成的 有两种稳定的工作状态:“导” 与“截止”,即电脉冲的“有”与“无” 分别用“1”和“0”表示,2.1.1 数据在计算机中是以二进

2、制形式存储的,P16,若相邻的8个二极管元件中第1,3,5,7个元件处于“导通”状态,第2,4,6,8个元件处于“截止”状态,用“10101010”表示,导通 截止 导通 截止 导通 截止 导通 截止,1 0 1 0 1 0 1 0,2.1.1 数据在计算机中是以二进制形式存储的,P16,2.1.1 数据在计算机中是以二进制形式存储的,P16,2.1.2 位、字节和地址,位(bit) ,又称“比特” 。每一个二极管元件称为一个“二进制位”,是存储信息的最小单位。它的值是“1”或“0” 字节(byte) ,又称“拜特” 。一般将8个“二进制位”组织成一组,称为“字节”。这是人们最常用的存储单位,

3、P17,2.1.2 位、字节和地址,地址。计算机的存储器包含许多存储单元,操作系统把所有存储单元以字节为单位编号,P17,2.1.3 不同类型数据的存储方式,整数的存储方式 一个十进制整数,先转换为二进制形式 如整数10,以二进制形式表示是1010,P18,用一字节存放,用两字节存放,负数按补码形式存放,2.1.3 不同类型数据的存储方式,实数的存储形式 对于实数,一律采用指数形式存储 123.456标准化指数形式为0.123456103,P18,2.1.3 不同类型数据的存储方式,字符的存储方式 对于字符,按ASCII代码存放 A的ASCII代码是65(1000001),P18,2.2 整型

4、数据的运算与分析,2.2.1 整型数据运算程序举例和分析 2.2.2 整型常量与整型变量,P19,2.2.1 整型数据运算程序举例和分析,例2.1 鸡兔同笼。在一个茏子里同时养着一些鸡和兔子,你想了解有多少只鸡和多少只兔,主人对你说:我只告诉你鸡和兔的总头数是16和总脚数是40,你能不能自己计算有多少只鸡和多少只兔?,P19,2.2.1 整型数据运算程序举例和分析,解题思路: 设x代表鸡的数量,y代表兔的数量,总头数为h,总脚数为f 列出下面的方程式: x + y = h (1) 2x + 4y = f (2) 解方程得到:,P19,2.2.1 整型数据运算程序举例和分析,#include v

5、oid main() int h,f,x,y; h=16; f=40; y=(f-2* h)/2; x=h-y; printf(“%d%dn”,x,y); ,P19,定义整型变量h,f,x,y,使h的值等于16,使f的值等于40,计算兔的个数,计算鸡的个数,2.2.1 整型数据运算程序举例和分析,#include void main() int h,f,x,y; h=16; f=40; y=(f-2* h)/2; x=h-y; printf(“%d%dn”,x,y); ,P19,输出鸡和兔个数,124,%d,%d,2.2.1 整型数据运算程序举例和分析,#include void main()

6、 int h,f,x,y; h=16; f=40; y=(f-2* h)/2; x=h-y; printf(“%d%dn”,x,y); ,P19,输出鸡和兔个数,12,4,%d,%d,cock=%d, rabbit=%d,2.2.1 整型数据运算程序举例和分析,#include void main() int h,f,x,y; h=16; f=40; y=(f-2* h)/2; x=h-y; printf(“%d%dn”,x,y); ,P19,输出鸡和兔个数,12,4,cock=%d, rabbit=%d,cock=12, rabbit=4,2.2.1 整型数据运算程序举例和分析,定义变量的一

7、般形式是: 类型名 变量名; 例如:int h,f,x,y; 变量都必须在使用前定义,指定其类型 赋值:h=37; f=88;,P19,2.2.2 整型常量与整型变量,常量和变量 常量是指在程序运行过程中其值不能改变的量 变量是指在程序运行过程中其值可以改变的量,P22,2.2.2 整型常量与整型变量,常量和变量 要注意区别变量名和变量值,P22,16,h,2000,存储单元,变量名,变量地址,变量值,2.2.2 整型常量与整型变量,常量和变量 要注意区别变量名和变量值,P22,16,h,2000,执行h=37;,37,2.2.2 整型常量与整型变量,变量名的取名规则 变量名第一个字符必须是字

8、母或下划线,其后字符必须是字母、数字或下划线,P22,合法:sum,average, _total, Class, day, month, Student_name,tan,li_ling 不合法:Zhang-sun,Students, $123,33,3D64,2.2.2 整型常量与整型变量,变量名的取名规则 变量名第一个字符必须是字母或下划线,其后字符必须是字母、数字或下划线 大小写字母代表不同的字符,一般,程序中的变量名用小写字母表示 变量名的长度不是无限的 变量名尽量简单易记、见名知意 在同一函数中,不同变量不能取相同名,P22,2.2.2 整型常量与整型变量,变量必须“先定义,后使用

9、” 根据定义变量时指定的类型,编译系统为变量分配相应的存储单元 凡未被事先定义的,系统不把它认作变量名,保证程序中变量名使用得正确 指定了每一变量属于一个类型,就便于在编译时据此检查在程序中要求对该变量进行的运算是否合法,P22,2.2.2 整型常量与整型变量,变量类型相当于建造房屋的图纸,按照同一套图纸可以建造出许多套外形和结构完全相同的房屋,它们具有相同的特征 类型是抽象的,变量是具体的 图纸相当于一系列的规则和要求,依照它进行施工。但光有图纸是不能住人的,只有建成的房屋才能住人 类型不占存储单元,不能用来存储数据,而变量占存储单元,可以用来存储数据,P22,2.2.2 整型常量与整型变量

10、,整型常量的表示形式 除了常用的十进制形式外,还允许使用八进制形式和十六进制形式表示的数 整型变量的种类 基本整型,类型名为int 长整型,类型名为long int 短整型,类型名为short int ,P22,2.3 实型数据的运算与分析,2.3.1 实型数据的运算举例 2.3.2 实型常量的表示形式 2.3.3 实型变量,P24,2.3.1 实型数据的运算举例,例2.2 分期付款的计算。张先生为购房,向银行贷款,贷款额为D元,每月准备还P元,月利率为R,求需要多少个月才能还清。,P24,m是还清贷款所需月数 d=324500,p=3245,r=0.8%,2.3.1 实型数据的运算举例,(1

11、)d和p是整数,r是一个小数,因此程序中要分别定义整型变量和实型变量。 (2)公式中用到对数log,这个对数是以10为底的。对数log的函数log10,P24,2.3.1 实型数据的运算举例,#include #include void main() int d,p; float r,m; d=324500; p=3245; r=0.008; m=(log10(p)-log10(p-d*r)/log10(1+r); printf(“month=%fn”,m); printf(“total=%fn”,m*p); ,P24,用到数学函数时,定义整型变量d,p,定义实型变量r,m,赋值,求m的值,2

12、.3.1 实型数据的运算举例,#include #include void main() int d,p; float r,m; d=324500; p=3245; r=0.008; m=(log10(p)-log10(p-d*r)/log10(1+r); printf(“month=%fn”,m); printf(“total=%fn”,m*p); ,P24,输出m的值,计算并输出还款数,total=655436.127930,month=201.983404,输出实数时,2.3.1 实型数据的运算举例,#include #include void main() int d=324500,p

13、=3245; double r=0.008,m; m=(log10(p)-log10(p-d*r)/log10(1+r); printf(“month=%fn”,m); printf(“total=%fn”,m*p); ,P24,定义变量时赋初值,定义double型无警告错,2.3.2 实型常量的表示形式,实数在计算机语言中常称为浮点数 十进制小数形式 如:0.123, 123.23, 0.0 指数形式 如:123e3或123E3,P26,2.3.3 实型变量,实型变量的分类 单精度实型变量(float型) 双精度实型变量(double型) 长双精度实型变量(long double型),P27

14、,2.3.3 实型变量,实型变量的分类 实型数据的舍入误差 实型变量是由有限的存储单元组成的 能提供的有效数字总是有限的 在有效位以外的数字将被舍去 会产生一些误差,P27,2.3.3 实型变量,实型变量的分类 实型数据的舍入误差 例2.3 实型数据的舍入误差,P27,#include void main() float a; a = 1234.1415926; printf(“a=%fn“,a); ,a=1234.141602,7位有效位,2.3.3 实型变量,实型变量的分类 实型数据的舍入误差 把实数按双精度数处理 把程序中的实常量处理成双精度型,分配8个字节,以提高精度。,P27,a =

15、 1234.1415926;,双精度,单精度,编译时有警告,最好:double a;,2.4 字符型数据的运算,2.4.1 字符数据运算的简单例子 2.4.2 字符常量和字符变量 2.4.3 字符串常量,P29,2.4.1 字符数据运算的简单例子,例2.4 逐个输出英文字母C,H,I,N,A。然后按反序输出,即A,N,I,H,C。,P29,#include void main() char a=C,b=H,c=I,d=N,e=A; printf(“%c%c%c%c%cn”,a,b,c,d,e); printf(“%c%c%c%c%cn”,e,d,c,b,a); ,定义字符变量,2.4.1 字符

16、数据运算的简单例子,例2.4 逐个输出英文字母C,H,I,N,A。然后按反序输出,即A,N,I,H,C。,P29,#include void main() char a=C,b=H,c=I,d=N,e=A; printf(“%c%c%c%c%cn”,a,b,c,d,e); printf(“%c%c%c%c%cn”,e,d,c,b,a); ,用单撇号括起来,输出字符,CHINA ANIHC,2.4.2 字符常量和字符变量,字符常量 字符常量是用单撇号括起来的一个字符 英文字母可以作为字符常量 键盘上的字符都可以作为字符常量 小写字母和大写字母是不同的字符常量,P29,2.4.2 字符常量和字符变量,转义字符 转义字符必须以反斜杠“”开头 “”后只能有一个字符(或代表字符的8进制或16进制数),

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号