c语言程序设计数据存储方案,c语言程序设计“第02章数据的存储及运算.ppt

c语言程序设计“第02章数据的存储及运算.ppt

第2章 数据的存储与运算,2.1 常量和变量 2.2 整型数据 2.3 实型数据 2.4 字符型数据 2.5 符号常量 2.6 算术运算符和算术表达式 2.7 C运算符和C表达式,2.1 常量和变量,1 什么是常量 在程序运行过程中其值不变的量。 2 什么是变量 在程序运行过程中其值可以改变的量。 包括变量名、变量值、存储单元、变量地址 3 变量的取名规则 字母(下划线)开头,字母、数字组成; 区分大、小写; 简单易记,见名知义; 长度不限; 不能重名。,4 变量必须“先定义,后使用”,定义变量的一般形式 类型名 变量名; 定义变量的作用 根据定义的变量类型分配存储单元; 系统检查到未定义的变量,会提示出错; 根据类型,检查对变量进行的运算是否合法;,例题2.1,问题鸡兔同笼,总头数为h,总脚数为f,求有多少只鸡多少只兔 设计算法 设鸡的数量为x,兔的数量为y,则有 xyh 2x4yf 解方程得yf-2h/2 xh-y 若h16,f40,2 编程序 include void main int h,f,x,y; h16; f40; yf-2*h/2; xh-y; printf“dd“,x,y; ,2.2 整型数据,整型常量的表示形式 常用十进制形式如12、-56。 2 整型变量的种类 (1) int 整型。 取值 -3276832767(2 byte (2) long 长整型 。 取值 -21474836482147483647(4 byte 3 整型变量的定义 例如int a,b; long c; 4 整型变量的存储 二进制形式直接存放到存储单元中。,2.3 实型数据,1 实型常量的表示形式 实数有两种写法 (1)小数形式。例如3.14、9.8、0.5、0.0 (2)指数形式E(e) 如 12106 1.2e7(规范化指数形式) 0.000012 1.2E-5 2 实型变量 的种类 (1) float 单精度实型 。 取值 10-3810384B,有效位数7位 (2) double 双精度实型 。 取值 10-308103088B,有效位数1516位,3 实型变量的定义 例如float x,y; double z; 4 实型变量的存储 按照标准化指数形式,以二进制存储,数值 部分占3个字节,指数部分占1 个字节。 5 实型变量的舍入误差 有效位数以外的数字将被舍去。 6 把实数按双精度数处理 对实型变量最好都定义为double型。,例题2.2 问题已知三角形三边a,b,c,求面积s 设计算法 设p为三边和的一半,根据海伦公式 pabc/2 ssqrtp*p-a*p-b*p-c 若a13.6,b14.8,c20.5,2 编程序 include include void main double a,b,c,p,s; a13.6;b14.8;c20.5; pabc/2; ssqrtp*p-a*p-b*p-c; printf“f “,s; ,2.4 字符型数据,1 字符常量的形式 用单撇号括起来的一个字符,如a,4, 注意键盘上的字符都可以作为字符常量,不包 括日常用到的一些特殊符号。 转义字符 反斜杠 后跟一个字符,如n(换行符)。 转义字符是一个字符常量。 3 字符变量 用来存放字符常量,只能存放一个字符。 如 char c1,c2 ; c1a; /*c1中存放a的ASCII码97*/ c20; /*c2中存放0的ASCII码48*/,字符变量的存储 占内存一个字节,存放字符的ASCII码(见附录A,p300)。 字符数据与整型数据 由于字符在内存中存放的是ASCII码,实际是一个整数,所以两种数据之间可以通用。 如char c1, c2,c3; c197; /*与c1a等价*/ c248; /*与c20等价*/ c3A32; /*字符数据可以当做整数 */ 区别占字节数不同。,6 字符串常量 一对双撇号括起来的字符序列,如 “dalian”、“How are you .” 字符串的长度串中包含的字符个数。 字符串的存储每个字符占一个字节,系统自动在最后加上字符0,作为结束标志。 如字符串“dalian”长度为6,占7个字节。 注意区分 a和 “a” a 字符常量,占1个字节 “a” 字符串常量,占2个字节,例题2.3 问题将小写字母a、b转换成大写字母A、 B。 设计算法 将小写字母的ASCII码的值减去32即可。 2 编程序 include void main char c1a,c2b; c1c1-32; c2c2-32; printf“c, cn“,c1,c2; printf“d, dn“,c1,c2; ,2.5 符号常量,1 符号常量的定义 define PI 3.1415926 处理方法在编译时将程序中所有的PI替换成 3.1415926。 include与define均为编译预处理命令。 注意符号常量和变量的区别。 2 符号常量的作用 (1)含义清楚 (2)一改全改,2.6 算术运算符和算术表达式,算术运算符 1 基本算术运算符*、/、、 、- 与数学中的含义基本相同 优先级由高到底(先*、/、后、- ); 同级时结合性为自左至右(左结合性); 双目运算符。 注意两个整数相除的结果为整数,如5/3值为1; 两侧均为整数。 2 自增、自减运算符、 前置xi;xi; 先加后用(先减后用) 后置xi;xi; 先用后加(先用后减),2. 算术表达式 用算术运算符把常量、变量、函数连接起来的、 符合C语言语法规则的式子。 其中常量、变量或函数本身亦为简单表达式。 各类数值型数据间的混合运算 将两个不同类型的运算对象先转换成同一类型, 然后进行运算。 原则字节少的类型转换为字节多的类型。系 统自动进行。 强制类型转换 类型名表达式,2.7 C运算符和C表达式,1 C运算符 C语言中除了有算术运算符以外,还有12种运算符,如关系运算符、逻辑运算符、赋值运算符、逗号运算符等(详见p42)。 2 C表达式 C语言中共有五类表达式 算术表达式; 关系表达式; 逻辑表达式; 赋值表达式; 逗号表达式;,练习题,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值