C语言程序设计-第三章.ppt

上传人:小飞机 文档编号:6504012 上传时间:2023-11-07 格式:PPT 页数:23 大小:251.49KB
返回 下载 相关 举报
C语言程序设计-第三章.ppt_第1页
第1页 / 共23页
C语言程序设计-第三章.ppt_第2页
第2页 / 共23页
C语言程序设计-第三章.ppt_第3页
第3页 / 共23页
C语言程序设计-第三章.ppt_第4页
第4页 / 共23页
C语言程序设计-第三章.ppt_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《C语言程序设计-第三章.ppt》由会员分享,可在线阅读,更多相关《C语言程序设计-第三章.ppt(23页珍藏版)》请在三一办公上搜索。

1、第三章,数据类型、运算符、表达式,3.1数据类型,3.2 常量与变量,常量其值不能被改变的量。如2,1.3,A等符号常量:将程序中的常量定义为一个标识符一般使用大写英文字母表示使用前必须先定义,定义的形式是:#define 符号常量名 常量例如:#define PI 3.1415926,#define PRICE 30#include void main()int num,total;num=10;total=num*PRICE;printf(“total=%dn,total);,变量其值可以被改变的量。每个变量有一个名字。变量名命名原则:1)只能由字母、数字、下划线组成,且第一个字符必须为字

2、母或下划线。2)前八个字符。3)区分大小写,经常用小写字母。4)用实际意义的单词或汉语拼音表示要求:1)对所有变量必须先定义后使用2)凡未被事先定义的,不作为变量名每个变量被指定为一个确定的类型,3.3整型数据,3.3.1整型常量三种数制的表示1)十进制:123,0,-123452)八进制:以0开头的数,如012,-0123,-019(错)3)十六进制:以0X开头的数,如0X12,0X1AB3.3.2整型变量一、整型变量的分类,整型变量的定义及使用,#include main()int a,b,c,d;unsigned u;a=12;b=-24;u=10;c=a+u;d=b+u;printf(

3、a+u=%d,b+u=%dn,c,d);输出结果a+u=22,b+u=-14,整型数据的溢出main()int a,b;a=32767;b=a+1;printf(%d,%dn,a,b);-32768032767,注意,1)一个常量的后面加上U(u)为无符号常量,如-12345U对应于53191(65536-12345=53191)2)一个常量的后面加上L(l)为长整型。加上H(h)为短整型。,3.4实型数据,3.4.1实型常量的表示1)小数形式:123.56,-785.652)指数形式:1.23E3。要求E(e)的前后必须有数字,且E(e)的后面只能是整数。3.4.2实型变量一、分类,二、舍入

4、误差,例3.4main()float a,b;a=123456.789e5;b=a+20;printf(a=%f,b=%fn,a,b);,理论上但是实际上。原因是一个单精度实型只能保证7位有效数字。因此要避免一个很大的数和一个很小的数直接加减。如果把类型改为double,输出格式用lf则,结果正确。,三、实型常量的类型,C编译系统将实型常量当作双精度数处理。,3.5字符型数据,3.5.1字符型常量字符型常量一对单引号括起来的一个字符。如a,1字符串常量一对双引号括起来的多个字符。如”abc”,”a”常用转义字符及含义,字符变量,用来存放字符,只能存放一个字符字符变量的定义形式如下:char c

5、1,c2;它表示c1和c2为字符变量,各放一个字符。因此可以用下面语句对c1、c2赋值:c1=a;c2=b;,#include void main()char c1,c2;c1=97;c2=98;printf(%d%d,c1,c2);printf(%c%c,c1,c2);因为 a和b的ASCII码为97和98。第4行将输出两个字符。%c是输出字符的格式。程序输出:RUN97 98ab,main()char c1,c2;c1=a;c2=b;c1=c1-32;c2=c2-32;printf(%c%c,c1,c2);运行结果为 A B,3.6变量赋初值,在定义变量的同时赋予初值。如int a=3;f

6、loat b=3.56;char c=a;int a,b,c=5;给部分变量赋予初值。int a=3,b=3,c=3;不能写成int a=b=c=3;int a;a=3;,3.7数据混合运算,小类型转换为大类型,结果为所涉及类型中的最大类型char(short)intunsignedlong(float)doublelong double,3.8算术运算符和算术表达式,3.8.1算术运算符1、基本运算+加法运算、正值运算-减法运算、负值运算*乘法运算/除法运算(注意,如果除号左右两边都是整数,则为整除)%求余运算(必须是整数)如:3/2=1,3%2=1,-3/2=-1,-3%2=-1,3/-2

7、=-1,3%-2=1,-3/-2=1,-3%-2=-1,强制类型转换,main()float x;int i;x=3.6;i=(int)x;printf(x=%f,i=%dn,x,i);,强制类型的一般格式:(类型名)(表达式)注意,上例中X的值没有变化,也就是强制类型转换不改变本身表达式的值,只是产生一个中间结果而已。,自增、自减运算,y=+k k=k+1;y=k;y=k+y=k;k=k+1;前缀+,先加,后缀+,后加前缀-,先减,后缀-,后减,#include void main()int i,j,m,n;i=8;j=10;m=+i;n=j+;printf(%d,%d,%d,%dn,i,j

8、,m,n);,9,11,9,10,赋值运算和赋值表达式,1、类型转换1)实型赋给整型,舍弃小数部分2)整型赋给实型,值不变,后面加03)双精度赋给单精度,截取前7位有效数字,但应该注意数值范围,不要溢出。如:float f;double d=123.456789e100;f=d;错误float f;double d=123.456789e20;f=d;则f=123.457e204)字符型和整型在ASCII码内可以直接赋值2、赋值表达式 扩展的赋值表达式:,#include main()int a,b,c,x,y,z;a=1;b=2;c=3;x=a;y=b;z=c;printf(x=%d,y=%d,z=%dn,x,y,z);x=y=z=c;z+=3;printf(x=%d,y=%d,z=%dn,x,y,z);,x=1,y=2,z=3x=3,y=3,z=6,逗号运算,逗号表达式的求解:从左到右依次运算,结果为最后一个表达式n的值。表达式1,表达式2,表达式n a=3*5,a*4,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号