第2章 C语言程序设计初步.ppt
《第2章 C语言程序设计初步.ppt》由会员分享,可在线阅读,更多相关《第2章 C语言程序设计初步.ppt(48页珍藏版)》请在三一办公上搜索。
1、第2章 C语言程序设计初步,2.1 数据和数据类型 数据是程序加工、处理的对象,也是加工的结果。数据类型是程序语言中具有同样的性质的数据集合.,整型int(integer的缩写)字符型 char(character的缩写)单精度型 float 基本类型 实型(浮点型)双精度型 double 数组类数据类型 构造类 结构体 struct 共用体 union 枚举类 enum 指针类 空类型 void,2.2.1 常量与变量1常量在程序运行中其值不能被改变的量,常量区分为不同类型。如 123,456:整型常量 a,A,b,1,0:字符常量 123.0,3.5:实型常量“123”,“A”:字符串常量
2、,例3_1 已知圆半径r,求圆面积和周长的值。#define 3.14159main()int area,perimeter;int r;r=3;area=*r*r;perimeter=2*r;printf(“area=%dn”,area);printf(“perimeter=%dn”,perimeter);,符号PI代替常量3.14159,称为符号常量符号常量的定义是在编译预处理语句里进行的,称为宏定义符号常量一般用大写 符号常量在其作用域内值不能改变(不能被赋值)PI=35;符号常量在编译时被常量替换,2.符号常量用一个标识符代表一个常量,提高程序的可修改性和灵活性。,定义格式:#defi
3、ne 标识符 常量,3.变量,(1)变量:其值可以改变的量。在内存中占据存储单元,在该单元中存放变量的值,必须先定义,后使用。,程序里的一个变量可以看成是个存储数据的容器,它的功能就是可以存储数据。,变量的定义格式:类型说明符 变量名表;定义的变量名称最好和存放数据的意义对应。,例:int a,b,c;/*说明a,b,c为整型变量*/char cc;/*说明cc为字符变量*/double x,y;/*说明x,y为双精度实型变量*/,#define PRICE 30 main()int num,total;num=3;total=num*PRICE;printf(“total=%dn”,tota
4、l);num=4;total=num*PRICE;printf(“total=%dn”,total);,90,num,total,对变量的基本操作有两个:1.“赋值”:向变量中存人数据值。2.“取值”:取得变量当前值、以便在程序运行过程中使用。,3,4,120,*同一个变量一旦重新赋值,原来的值就不再存在。,2.2.2 整型数据及其表示,1.整型类型,取值范围:,2.整型常量,十进制:123,-456,0八进制:以0开头(零),01,012 0123=(123)8=(83)10十六进制:以0 x开头,0 x123=(123)16=(291)10 0 xF=(f)16=(15)10长整型常量:1
5、23L,-456l,二进制位(bit):计算机中最小的存储信息单位 字节(Byte):八个二进制位组成的存储单元,是 计算机中最小存取信息单位机器字(word):计算机中存取信息的基本单位,不 同的计算机系统它的长度是不同的,补充:数的存放形式补码,1.正数不变2.负数各位取反后+1,符号位置1(34)10=(0 0100010)2(-34)10=(1011101)2+1(1 1011110)2,4 bytes 数据 x补码 4294967295x+1(-34)10补码:(4294967295341)10(4294967262)10=(ffffffdf)16=(1111 1111 1111 1
6、111 1111 1111 1101 1110)2,2 bytes 数据 x补码65535x+1(-34)10补码:(65535341)10=(65502)10=(ffdf)16=(1111 1111 1101 1110)2,变量的定义格式:类型说明符 变量名表;,3.整型变量,问题1:c没有定义便使用;,int c;,问题2:c应为 32770,但实际 为 32766,发生溢出;,问题3:c应为long int 类型;,long int c;,2.2.3 实型数据及其表示,1.实型类型,实型数据是以浮点数形式存储的,在计算机中按指数形式。如图例:0.12345610-2,(float),(d
7、ouble),(long double),2.实型常量十进制形式:由数字和小数点组成;如:0.123,0.0,-54.0指数形式:由十进制小数形式指数;如:123e3,123E-2 注:e或E的前后面须有数字 不合法的指数形式:e3,2.1e3.5,.e3,e在实数常量尾部用后缀符 f(F)代表单精度实数(7位有效位),l(L)代表双精度实数(1819位有效位);例:2.3f,-0.123f,2e-3f,-1.5e4f 为单精度实常量 1256.34L,-0.123l,2e3L 为双精度实常量,3.实型变量,4.实型数据应用中的误差问题,由于机器存储限制,会使实数产生误差,理想输出:a=123
8、45.6789,b=0.1234567891234567899e15,实际输出:a=12345.678711,b=123456789123456.797000,2.2.4 字符型数据及其表示,1.字符型数据 字符型数据在计算机中存储的是ASCII码,占用1 byte。,字符“A”的存储形式实际上就是一个整型数65;它可以直接与整型数据进行算术运算、混合运算,与整型变量相互赋值,字符型数据以字符或整数两种形式输出。以字符形式:先将ASCII码值转换为相应的字符,再输出;以整数形式:直接将ASCII的值作为整数输出。,n 换行(LF)t 横向跳格(HT)b 退格(BS)v 竖向跳格 f 走纸换页(
9、FF)r 回车(CR)单引号()反斜杠字符()”双引号(“)0,空(不是0)101 字符A(八进制)x41 字符A(十六进制),2.字符型常量:用单引号括起来的一个字符:普通字符:a,A,1等(大小写不同)转义序列:将反斜杠()后面的字符转变为另外的含义。是一种特殊的字符常量。,3.字符型变量:类型名称char:,*错误的字符常量表示:,015,n,”A”,ab,“How do you do.”“CHINA”“$123.45”“a”,4.字符串常量:一对双引号括起来的字符序列,注意:C规定:每个字符串结尾加一“字符串结束”(0)系统自动加上的;“CHINA”:,字符串如果需要存放在变量中,需用
10、字符数组来存放(第7章),a与“a”不同,5.字符数据的应用举例,main()int i;char c;i=a;c=97;printf(“%c,%dn”,c,c);printf(“%c,%dn”,i,i);,输出结果:a,97 a,97,注意:在一定范围内通用(0-127),2.2.5 变量的初始化 通常一个变量是先说明,然后再赋值给它。例:int x,y;x=10;b=20;C规定:可以在定义变量的同时使变量初始化,例:float x123.45;/*说明x为实型量且赋初值为123.45*/int a,c=10;/*说明整型变量a,c,并仅给c赋初值10*/int a1=10,b1=6;/*
11、说明整型变量a1,b1;分别赋不同初值*/double Pai=3.14;/*说明Pai为双精度实型变量为赋初值为3.14*/char cha;/*说明字符变量ch,并赋初值为a*/注意:对几个变量赋同一个值,必须分别赋值 例:int a=b=c=3;error int a=3;b=3;c=3;ok 说明:变量初始化不是在编译阶段完成的而是在程序执行阶段执行 本函数时赋以初值的 例:int a=3;int a;a=3;例:int a,b,c=5;int a,b,c;c=5;,变量初始化的应用举例,main()int a;int b;b=a+2;printf(“%d,%dn”,a,b);,注意:
12、定义的变量在没有初始化之前有一个不确 定值。,a=3;,2.3 算术运算与赋值语句,2.3.1 c语言中的运算规则1、运算符 分类(按操作数个数分):单目运算:一个运算符连接一个运算对象;(a;!a;+a)双目运算:一个运算符连接两个运算对象;(2312)三目运算:一个运算符连接三个运算对象;ab?a=1:a=-1,分类(作用):,算术运算符+-*/%自增自减运算符+-赋值与赋值组合运算符=+=-=*=/=%=|=&=关系运算符=条件运算符?:逗号运算符,指针运算符*&求字节数运算符 size of 强制类型转换运算符(类型)分量运算符.-下标运算符 其它(),2、表达式,算术表达式 a+b-
13、c自增自减表达式 i+-i关系表达式 a!=b(a+b)(a-b)逻辑表达式 a&(b=c)!a字位表达式 a 2 a&b赋值表达式 a=3 a*=2 a=b=6 逗号表达式(a+b,a-b),3、优先级和结合性(附录A)优先级:同一表达式中不同运算符进行计算时的先后次序 结合性:针对同一优先级的多个运算符而言,指同一表达式 中相同优先级的多个运算应遵循的运算次序。,表达式运算时的关键问题:,(1)算符优先极问题(不同级别算符的计算次序)(2)算符结合次序(优先级平级时的计算次序)(3)算符操作数个数(一目或二目算符)(4)算符对应操作数类型,2.3.2 算术运算符和算术表达式1、算术运算符,
14、说明:“+”,“-”运算符单目运算:取正、负值运算;优先级高 双目运算:加、减运算;优先级低除法运算“/”整数(字符)相除结果是整型(商),小数部分全部舍去 实数相除,所得的商也为实数。例如:1/3=0 只取结果的整数部分0,舍去0.333333 15/43 只取结果的整数部分3,舍去0.75 1.0/30.333333 13/4.03.250000 整数相除时,若不能整除将造成误差,要避免整数直接相除。模运算%也称为求余运算。要求两个运算对象都为整型,其结果是整数除法的余数。例如:5%10=5 10%3=1-10%3-1,算术运算符的优先级及结合性如下:,例如表达式 x/(67-(12+y)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第2章 C语言程序设计初步 语言程序设计 初步
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-5918474.html