第3章最简单的C程序设计—顺序程序设计.ppt
《第3章最简单的C程序设计—顺序程序设计.ppt》由会员分享,可在线阅读,更多相关《第3章最简单的C程序设计—顺序程序设计.ppt(124页珍藏版)》请在三一办公上搜索。
1、2023/9/1,第3章 顺序程序设计,1,第3章最简单的C程序设计顺序程序设计,信息学院王燕,2023/9/1,第3章 顺序程序设计,2,主要内容,3.1 顺序程序设计举例3.2 数据的表现形式及其运算3.3 C语句3.4 数据的输入输出,2023/9/1,第3章 顺序程序设计,3,重点难点,数据类型及其运算数据输入输出格式输入输出顺序结构程序设计,2023/9/1,第3章 顺序程序设计,4,3.2 数据的表现形式及其运算,3.2.1 常量和变量3.2.2 数据类型3.2.3 整型数据3.2.4 字符型数据3.2.5 浮点型数据3.2.6 怎样确定常量的类型3.2.7 运算符和表达式,202
2、3/9/1,第3章 顺序程序设计,5,3.2.1 常量和变量,1.常量:在程序运行过程中,值不能被改变的量整型常量:如1000,12345,0,-345实型常量十进制小数形式:如0.34-56.79 0.0指数形式:如12.34e3(代表12.34 103)字符常量:如?转义字符:如n字符串常量:如boy符号常量:#define PI 3.1416,2023/9/1,第3章 顺序程序设计,6,3.2.1 常量和变量,例符号常量的使用#include stdio.h#define PRICE 30void main()int num,total;num=10;PRICE=40;total=num
3、*PRICE;printf(total=%dn,total);,运行结果:total=300,说明:程序中用#define命令行定义PRICE代表常量30,此后凡在本文件中出现的PRICE都代表30,可以和常量一样进行运算。,说明:如再用赋值语句给PRICE赋值是错的 PRICE=40;/错误,不能给符号常量赋值,2023/9/1,第3章 顺序程序设计,7,3.2.1 常量和变量,2.变量:在程序运行期间,变量的值是可以改变的变量必须先定义,后使用定义变量时指定该变量的名字和类型变量名和变量值是两个不同的概念变量名实际上是以一个名字代表的一个存储地址从变量中取值,实际上是通过变量名找到相应的内
4、存地址,从该存储单元中读取数据变量值是存储单元中的数据,2023/9/1,第3章 顺序程序设计,8,3.2.1 常量和变量,变量的特征(1)变量名:存储空间的名字,通过它对变量进行访问。一个标识符,通常用小写字母表示;(2)变量类型:决定存储单元的大小 整型变量、实型变量、字符型变量等(3)变量值:存储单元中存储的数值。,如 y=x+5;其中x和y都是变量,以上语句是将x+5的值赋给y,2023/9/1,第3章 顺序程序设计,9,3.2.1 常量和变量,3.常变量:const int a=3;4.标识符:一个对象的名字,用来标识变量名、符号常量名、数组名、函数名等的有效字符序列。C语言规定标识
5、符只能由字母、数字和下划线3种字符组成,且第一个字符必须为字母或下划线。,sum,_total,month,Student_name,lotus_1_2_3,BASIC,li_ling,M.D.John,¥123,3D64,ab,2023/9/1,第3章 顺序程序设计,10,举例,program to_ _to file_2 ab1_c3,为合法标识符,yes?123go toa_80%if,含有不合法字符“?”,出现非法字符“”,标识符中不允许有空格,第一个字符不能为数字,与关键字相同,2023/9/1,第3章 顺序程序设计,11,3.2.1 常量和变量,保留字:C语言规定的具有特定意义的字
6、符串,也称关键字。C语言的保留字(关键字)共有37个,附录C,2023/9/1,第3章 顺序程序设计,12,变量小结,要求对所有用到的变量作强制定义,也就是“先定义,后使用”。标识符不能与C语言的保留字、系统标准库函数同名。编译系统将大写字母和小写字母认为是两个不同的字符。建议变量名的长度最好不要超过8个字符。在选择变量名和其它标识符时,应注意做到“见名知意”,即选有含意的英文单词(或其缩写)作标识符。,2023/9/1,第3章 顺序程序设计,13,3.2.2 数据类型,p43 图3.4,2023/9/1,第3章 顺序程序设计,14,3.2.3 整型数据,1.整型数据的分类最基本的整型类型基本
7、整型(int型):占2个或4个字节短整型(short int):VC+6.0中占2个字节长整型(long int):VC+6.0中占4个字节双长整型(long long int):C99新增的,2023/9/1,第3章 顺序程序设计,15,3.2.3 整型数据,2.整型变量的符号属性整型变量的值的范围包括负数到正数可以将变量定义为“无符号”类型扩充的整型类型:p46,2023/9/1,第3章 顺序程序设计,16,3.3 整型数据,3.整型常量的表示方法 整型常量即整常数。在C语言中,整常数可用以下三种形式表示:(1)十进制整数。如:123,-456(2)八进制整数,以0头的数是八进制数。如:0
8、123表示八进制数123,等于十进制数83,-011表示八进制数-11,即十进制数-9。(3)十六进制整数。以0 x开头的数是16进制数。如:0 x123,代表16进制数123,等于十进制数 291。-0 x12等于十进制数-18。,2023/9/1,第3章 顺序程序设计,17,3.3 整型数据,4.整型数据在内存中的存放形式 数据在内存中是以二进制形式存放的。如:int i;/*定义为整型变量*/i=10;/*给i赋以整数10*/,说明:内存中存储的是 00001010,2023/9/1,第3章 顺序程序设计,18,3.3 整型数据,5.整型变量的定义C规定在程序中所有用到的变量都必须在程序
9、中定义,即“强制类型定义”。例如:int a,b;(指定变量a,b为整型)unsigned short c,d;(指定变量c,d为无符号短整型)long e,f;(指定变量e,f为长整型),2023/9/1,第3章 顺序程序设计,19,3.3 整型数据,例整型变量的定义与使用#include void main()int a,b,c,d;unsigned u;a=12;b=-24;u=10;c=a+u;d=b+u;printf(a+u=%d,b+u=%dn,c,d);,说明:不同种类的整型数据可以进行算术运算,运行结果:a+u=22,b+u=-14,2023/9/1,第3章 顺序程序设计,20
10、,3.2.4 字符型数据,1.字符与字符代码大多数系统采用ASCII字符集字母:AZ,az数字:09专门符号:29个:!#&()*等空格符:空格、水平制表符、换行等不能显示的字符:空(null)字符(以0表示)、警告(以a表示)、退格(以b表示)、回车(以r表示)等,2023/9/1,第3章 顺序程序设计,21,3.2.4 字符型数据,字符1和整数1是不同的概念:字符1只是代表一个形状为1的符号,在需要时按原样输出,在内存中以ASCII码形式存储,占1个字节整数1是以整数存储方式(二进制补码方式)存储的,占2个或4个字节,0 0 1 1 0 0 0 1,2023/9/1,第3章 顺序程序设计,
11、22,3.2.4 字符型数据,1.字符常量(1)用单引号包含的一个字符是字符型常量(2)只能包含一个字符,例,a,A,1abc、a,2023/9/1,第3章 顺序程序设计,23,3.2.4 字符型数据,有些以“”开头的特殊字符称为转义字符,转义字符 功能 n 回车换行符,光标移到下一行行首 r 回车不换行,光标移动到本行行首 t 横向跳格(8位为一格,光标跳到下一格起 始位置,如第9或17位等)b 退一格,光标往左移动一格,2023/9/1,第3章 顺序程序设计,24,转义字符 功能 用于输出反斜杠字符“”用于输出单引号字符“”用于输出双引号字符“”ddd一到三位八进制数ddd对应的ASCII
12、码字符 xhh一到两位十六进制数hh对应的ASCII码字符f 走纸换页,2023/9/1,第3章 顺序程序设计,25,举例,练习:printf(Youre my good friend!n);在显示器输出什么?,Youre my good friend!,2023/9/1,第3章 顺序程序设计,26,举例,例转义字符的使用#include void main()printf(ab ct derftgn);printf(htibbj kn);,运行结果:f gdeh j k,2023/9/1,第3章 顺序程序设计,27,3.2.4 字符型数据,2.字符变量字符型变量用来存放字符常量,只能放一个字
13、符。字符变量的定义形式如下:char c1,c2;可以用下面语句对c1,c2赋值:c1=a;c2=b;一个字符变量在内存中占一个字节。,在字符变量中实际上存储的是字符的ASCII码,其存储形式与整数的存储形式相同。字符数据与整型数据可相互赋值,直接运算。例如:char c;c=97;相当于c=a;,2023/9/1,第3章 顺序程序设计,28,字符数据的存储形式,2023/9/1,第3章 顺序程序设计,29,3.2.4 字符型数据,例向字符变量赋以整数#include void main()char c1,c2;c1=97;c2=98;printf(%c%cn,c1,c2);printf(%d
14、%dn,c1,c2);,说明:在第3和第4行中,将整数97和98分别赋给c1和c2,它的作用相当于以下两个赋值语句:c1=a;c2=b;因为a和b的ASCII码为97和98,运行结果:a b 97 98,2023/9/1,第3章 顺序程序设计,30,3.2.4 字符型数据,例大小写字母的转换#include void main()char c1,c2;c1=a;c2=b;c1=c1-32;c2=c2-32;printf(%c%c,c1,c2);,说明:程序的作用是将两个小写字母a和b转换成大写字母A和B。从ASCII代码表中可以看到每一个小写字母比它相应的大写字母的ASCII码大32。,运行结
15、果:,2023/9/1,第3章 顺序程序设计,31,3.2.4 字符型数据,3.字符串常量是一对双引号括起来的字符序列。合法的字符串常量:How do you do.,CHINA,a,$123.45可以输出字符串,如printf(How do you do.);每个字符串尾自动加一个0作为字符串结束标志例字符串hello在内存中占内存单元不是5个字符,而是6个字符,最后一个字符为0,但在输出时不输出0,2023/9/1,第3章 顺序程序设计,32,3.2.4 字符型数据,a是字符常量,a是字符串常量。如:假设c被指定为字符变量:char c;,c=a;c=a;c=CHINA;,结论:不能把一个
16、字符串常量赋给一个字符变量。,2023/9/1,第3章 顺序程序设计,33,3.2.5 浮点型数据,浮点型数据是用来表示具有小数点的实数float型(单精度浮点型)编译系统为float型变量分配4个字节数值以规范化的二进制数指数形式存放,p50图3.11double型(双精度浮点型)编译系统为double型变量分配8个字节15位有效数字long double(长双精度型),2023/9/1,第3章 顺序程序设计,34,3.2.5 浮点型数据,浮点型常量的表示方法,两种表示形式,小数指数,0.1233e-3,注意:字母e(或E)之前必须有数字,且e后面的指数必须为整数,1e3、1.8e-3、-1
17、23e-6、-.1e-3e3、2.1e3.5、.e3、e,2023/9/1,第3章 顺序程序设计,35,3.2.5 浮点型数据,规范化的指数形式:在字母e(或E)之前的小数部分中,小数点左边应有一位(且只能有一位)非零的数字。例如:123.456可以表示为:123.456e0,12.3456e1,1.23456e2,0.123456e3,0.0123456e4,0.00123456e其中的1.23456e3称为“规范化的指数形式”。,2023/9/1,第3章 顺序程序设计,36,3.2.6 怎样确定常量的类型,字符常量:由单撇号括起来的单个字符或转义字符整型常量:不带小数点的数值系统根据数值的
18、大小确定int型还是long型等浮点型常量:凡以小数形式或指数形式出现的实数C编译系统把浮点型常量都按双精度处理分配8个字节,2023/9/1,第3章 顺序程序设计,37,变量赋初值,(1)C语言允许在定义变量的同时使变量初始化,如:int a=3;/指定a为整型变量,初值为3 float f=3.56;/指定f为浮点型变量,初值为3.56char c=a;/指定c为字符变量,初值为a,2023/9/1,第3章 顺序程序设计,38,变量赋初值,(2)可以使被定义的变量的一部分赋初值。如:int a,b,c=5;表示指定a,b,c为整型变量,但只对c初始化,c的初值为5(3)如果对几个变量赋以同
19、一个初值,应写成:int a=3,b=3,c=3;表示a,b,c的初值都是3。不能写成 int a=b=c=3;,注意:初始化不是在编译阶段完成的而是在程序运行时执行本函数时赋初值的,相当于有一个赋值语句。,2023/9/1,第3章 顺序程序设计,39,数值型数据的混合运算,混合运算:整型(包括int,short,long)、浮点型(包括float,double)可以混合运算。运算时,不同类型的数据要先转换成同一类型,然后进行运算。,说明:这种类型转换是由系统自动进行的。,2023/9/1,第3章 顺序程序设计,40,3.2.7 运算符和表达式,C运算符简介(1)算术运算符(+-*/%)(2)
20、关系运算符(=|&)(5)赋值运算符(=及其扩展赋值运算符)(6)条件运算符(?:)(7)逗号运算符(,),2023/9/1,第3章 顺序程序设计,41,3.2.7 运算符和表达式,(8)指针运算符(*和&)(9)求字节数运算符(sizeof)(10)强制类型转换运算符((类型))(11)成员运算符(-)(12)下标运算符()(13)其他(如函数调用运算符()),2023/9/1,第3章 顺序程序设计,42,3.2.7 运算符和表达式,(1)基本的算术运算符:+(加法运算符,或正号运算符。如:3+5、+3)-(减法运算符,或负号运算符。如:5-2、-3)*(乘法运算符。如:3*5)/(除法运算
21、符。如:5/3)(模运算符,或称求余运算符,%两侧均应为整型数据,如:7%4的值为3)。,2023/9/1,第3章 顺序程序设计,43,3.2.7 运算符和表达式,除法运算符“/”进行求商运算。对于不同类型的运算对象,除法表达式计算结果的类型也会不同。,例:计算x/y如果x,y是整型,则结果为整型,小数部分被略去。5/2结果为2,整型量 2/5结果为0,整型量如果x,y其中一个为实型量,则结果为实型5.0/2.0结果为2.5,2023/9/1,第3章 顺序程序设计,44,3.2.7 运算符和表达式,(2)算术表达式:用算术运算符和括号将运算对象(也称操作数)连接起来的、符合C语法规则的式子,称
22、为C算术表达式。运算对象包括常量、变量、函数等。例如:a*b/c-1.5+a是一个合法的表达式。,2023/9/1,第3章 顺序程序设计,45,3.2.7 运算符和表达式,数学式子改写成C语言表达式应注意以下几点:乘号不能省。如:ab应写成 a*b。所有符号写成一行。上下角标不能直接写,需要转换。C语言中只有圆括号,可以嵌套使用,避免两个运算符并置。如a*b/-c应该为a*b/(-c)。调用标准数学函数时,自变量应写在一对括号内。如:|-2163|应写成fabs(-2163),SIN12 应写成sin(12),2023/9/1,第3章 顺序程序设计,46,3.2.7 运算符和表达式,三角函数的
23、自变量应使用弧度。如SIN50应写成sin(50*3.1415926/180)要使所写的算术表达式与数学式子等价。例 3x2+4xysin56-|x-y|e2.3 3*x*x+4*x*y*sin(56*3.1415926/180)-fabs(x-y)*exp(2.3)sin+cossin sin(alf)+cos(alf)*sin(bate),2023/9/1,第3章 顺序程序设计,47,举例,一般数学式a(b+c)+dac,算术表达式(a*(b+c)+d)*a*c 将方括号改成圆括号,*不能省略,x/(x+y)+1.0/(x*y)其中不能出现分数,改用除法运算符,圆括号不能缺少,3.1415
24、9*r*r/2.0 其中 为非字母字符,要用实型常量代替,2023/9/1,第3章 顺序程序设计,48,3.2.7 运算符和表达式,C语言规定了运算符的优先级 在表达式求值时,先按运算符的优先级别高低次序执行,例如先乘除后加减。C规定了各种运算符的结合方向(结合性)算术运算符的结合方向为“自左至右”,即先左后右。,2023/9/1,第3章 顺序程序设计,49,3.2.7 运算符和表达式,(3)强制类型转换运算符可以利用强制类型转换运算符将一个表达式转换成所需类型。一般形式:(类型名)(表达式)例如:(double)a 将a转换成double类型(int)(x+y)将x+y的值转换成整型(flo
25、at)(5%3)将5%3的值转换成float型,2023/9/1,第3章 顺序程序设计,50,3.2.7 运算符和表达式,自动转换规则:,2023/9/1,第3章 顺序程序设计,51,举例,有如下变量类型:char c;int i;float f;double d;计算表达式:c+f+i+d,char float int double,c+f+i+d,int,double,double,double,该表达式值的类型是double类型,double,double,double,2023/9/1,第3章 顺序程序设计,52,3.2.7 运算符和表达式,例强制类型转换#include void m
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 简单 程序设计 顺序
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-5904056.html