一章顺序结构.ppt
《一章顺序结构.ppt》由会员分享,可在线阅读,更多相关《一章顺序结构.ppt(33页珍藏版)》请在三一办公上搜索。
1、1,1,第三章 顺序结构,顺序结构一般由函数调用语句、说明语句、表达式语句和输入输出语句组成。,顺序结构:按语句出现先后顺序依次执行的程序结构。顺序结构是程序设计中最简单、最基本的结构,其特点是程序运行时,按语句书写的次序依次执行,其结构如图所示。,2,2,3.1 C语句概述,一、C语句的分类1.表达式语句2.函数调用语句3.控制语句4.复合语句5.空语句,完成一定的控制功能。包括选择结构控制语句、循环结构控制语句、其他控制语句。,表达式语句由表达式后加上分号“;”组成。,由函数名、实际参数加上分号“;”组成。,把多个语句用括号括起来组成的一个语句组称复合语句。,只有分号“;”组成的语句称为空
2、语句。空语句是什么也不执行的语句。在程序中空语句可用来作空循环体。,第3章 顺序结构,3,3,3.1 C语句概述,二、C语句示例,while(getchar()!=n);/*这里的循环体为空语句。本语句的功能是,只要从键盘输入的字符不是回车则重新输入。*/,第3章 顺序结构,a+4*b;算术表达式语句4*x,4+y;逗号表达式语句x=4*5;赋值表达式语句(赋值语句),printf(“Hello Everyone!”);,函数调用,分号,3.2 数据输入输出一、数据输入输出的概念,计算机的输入输出是以计算机主机为主体而言。,输入:从外部通过输入设备(如键盘、磁盘、光盘、扫描仪等)向计算机输入数
3、据。,输出:从计算机向外部设备(如显示屏、打印机、磁盘等)输出数据。,4,4,3.2 数据输入输出,第3章 顺序结构,二、数据输入输出在语言中的实现,调用输入输出库函数实现输入输出操作,语言本身不提供输入输出语句,输入和输出操作是通过调用语言库函数中输入输出函数来实现的。,如:printf函数格式输出 putchar函数输出字符 scanf函数格式输入 getchar函数输入字符 puts 函数输出字符串 gets 函数输入字符串,2文件开头应有“#include”命令,在调用标准输入输出库函数时,文件开头应有编译预处理命令:#include/*系统到存放C库函数头文件的目录中寻找要包含的文件
4、,此为标准方式。*/或#include”stdio.h”/*系统先在用户当前目录中寻找要包含的文件,若找不到,再按标准方式查找。*/,stdio.h是”头文件”,包含了与用到的标准输入输出函数有关的信息。头文件的扩展名为.h,如 string.h对字符串进行操作的标准函数;math.h有关数学的标准函数。,库函数:是将函数放到一个文件里,供编程人员使用,一般是放到.lib文件里的。有两类库函数,一类是c语言标准规定的库函数,一类是编译器特定的库函数。,5,说明:输出项也称为输出参数,可以是变量、常量、表达式,输出项之间用逗号“,”隔开。printf函数是将各个输出项的值按照格式控制字符串中指定
5、的格式输出。例如:printf(“%d”,5);/*把5以%d的形式输出*/printf(“%d”,5-6);/*把表达式5-6的值1以%d的形式输出*/printf(“%d”,a);/*把变量a的值以%d的形式输出*/3.格式控制字符串里面包含三种类型的字符:(1)以%开头的格式说明,用于控制输出项的输出格式,其一般形式为:%修饰符格式字符 以%开头的格式说明的个数和输出项列表中输出项的个数是一一对应的,因此二者的数目必须一致。(2)转义字符,以反斜线“”开头,后面紧跟一个特定的字符,用来代表某个特定的操作。如“n”代表回车。(3)普通字符,在显示器上原样输出,主要起解释、说明作用。除了格式
6、说明和转义字符之外,在格式控制中的其他字符(包含空格)均按原样输出。,5,3.3 格式输出printf函数,一、printf函数的调用形式printf(格式控制,输出项列表)在printf函数调用之后加上“,”,就构成了输出语句:printf(“格式控制字符串”,输出项列表);功能:按控制字符串规定的输出格式,把输出项的值依次输出到系统指定的缺省输出设备,通常为显示器。,int a=3,b=4;printf(“a=%d b=%#odn”,a,b);,格式控制字符,普通字符,输出项,转义字符,“格式控制字符串”,输出项1,输出项2,输入项n,6,6,3.3 格式输出printf函数,二、格式说明
7、,格式说明的一般形式为:%-+0#整数1.整数2l或h 格式字符说明:它是由“%”开头,以格式字符(英文字母)结束的一串字符。2.-+0#整数1.整数2l或h为可选项,中的字符为修饰符,可以控制输出的宽度、精度、小数位数、对齐方式等。3.格式字符是格式控制(说明)中必须要有的,它控制输出列表里相应输出项数据的输出类型。,#includemain()printf(%d,%#o,%#xn,345,345,345);printf(%d,%#o,%#xn,0234,0234,0234);printf(%d,%#o,%#xn,0 x6e,0 x6e,0 x6e);,运行结果:345,0531,0 x15
8、9156,0234,0 x9c110,0156,0 x6e,7,7,3.3 格式输出printf函数,二、格式说明1.格式字符,8,#includevoid main()int a,b;double x,y;a=9;x=6.5;y=1.9;printf(x+a%4*(int)(x-y)%3/5=%fn,x+a%4*(int)(x-y)%3/5);a=2;b=3;x=4.5;y=6.7;printf(float)(a+b)/3+(int)x%(int)y=%fn,(float)(a+b)/3+(int)x%(int)y);,8,3.3 格式输出printf函数,二、格式说明1.格式字符,#inc
9、ludevoid main()int a,b;double x,y;a=9;x=6.5;y=1.9;printf(x+a%4*(int)(x-y)%3/5=%fn,x+a%4*(int)(x-y)%3/5);a=2;b=3;x=4.5;y=6.7;printf(float)(a+b)/3+(int)x%(int)y=%fn,(float)(a+b)/3+(int)x%(int)y);,运行结果:x+a%4*(int)(x-y)%3/5=6.500000(float)(a+b)/3+(int)x%(int)y=5.666667,运行结果:x+a*(int)(x-y)/5=6.500000(flo
10、at)(a+b)/3+(int)x(int)y=5.666667,9,9,3.3 格式输出printf函数,二、格式说明 1.格式字符,(1)与整型数据的格式输出有关的格式说明%d(%i)、%o、%X(%x)、%u,#includevoid main()int a=123;printf(%d,%o,%X,%x,%un,a,a,a,a,a);printf(%d%o%X%x%un,a,a,a,a,a);printf(%i,%o,%X,%x,%u,a,a,a,a,a);printf(%d%o%X%x%un,a,a,a,a,a);int b=-123;printf(%d,%o,%X,%x,%un,b,
11、b,b,b,b);,或%i:按十进制整型数据的实际长度输出,正数不输出符号“+”。%o:以八进制形式输出整型数据,输出的数值不带符号,符号位也一起作为八进制 数的一部分输出,输出的八进制整数不带前缀0。%x或%X:以十六进制数形式输出不带前缀0 x或0X的正整数。%u:以无符号十进制数形式输出整型数据.,运行结果:123,173,7B,7b,123123 173 7B 7b 123123,173,7B,7b,123123 173 7B 7b 123-123,37777777605,FFFFFF85,ffffff85,4294967173,10,10,3.3 格式输出printf函数,二、格式控
12、制1.格式字符,(2)与实型数据的格式输出有关的格式说明%f、%E(%e)、%G、%g,#includevoid main()float a=1234.56789;printf(%f,%E,%e,%G,%gn,a,a,a,a,a);double b=1234.56789;printf(%f,%E,%e,%G,%gn,b,b,b,b,b);,f:以小数形式输出实数(包括单、双精度数),不指定字段宽度,由系统自动指定字段宽度,使整数部分全部输出,并输出位小数。应当注意,在输出的数字中并非全部数字都是有效数字,单精度实数的有效位数一般为7-8位;双精度实数的有效位数一般为15-16位。%E或%e:以
13、指数形式输出实数(单,双精度数)。输出数据为标准指数形式,隐含精度为6,小数部分(尾数)的小数位数为3,即%e输出形式为-m.ddddddexxx,%E输出形式为-m.ddddddExxx,共占列宽度。%G或%e:根据数值的大小,自动选格式或格式,使得数据的输出宽度最小,且不输出无意义的零。%g对应输出的指数形式为-m.ddddddexxx,%G对应输出的指数形式为-m.ddddddExxx。格式用得较少。,运行结果:1234.567871,1.234568E+003,1.234568e+003,1234.57,1234.571234.567890,1.234568E+003,1.234568
14、e+003,1234.57,1234.57,11,11,3.3 格式输出printf函数,二、格式控制2.修饰符,12,12,3.3 格式输出printf函数,二、格式控制2.修饰符,(1)宽度说明:,在%和格式字符之间加入一个整数来指定输出数据的宽度。如果指定的宽度m大于数据实际的宽度,则输出数据的左端用空格补足;如果指定的宽度m小于数据实际的宽度,则按实际位数输出,这时指定的宽度不起作用。,为整型数据指定输出宽度md:输出宽度为m的十进制整型数据。mo:输出宽度为m的八进制整型数据。mx或%mX:输出宽度为m的十六进制整型数据。,#includemain()int a=1234567;pr
15、intf(%3d,%12dn,a,a);printf(%3o,%12on,a,a);printf(%3x,%12xn,a,a);,运行结果:1234567,12345674553207,455320712d687,12d687Press any key to continue-,13,13,3.3 格式输出printf函数,二、格式控制2.修饰符,(1)宽度说明,为实型数据指定输出宽度%m.nf:输出位的小数形式,包含1位小数点,其中有位小数位数。m.ne:输出位的指数形式,包含1位小数点,其中有位小数位数。注意:当数据的小数位数大于指定的宽度n时,截去右边多余的数,并对截去的第一位小数做四舍
16、五入处理;当数据的小数位数小于指定宽度n时,在小数的右边添0,使得输出数据的小数位数等于n。当数据的实际位数小于m时,则输出数据的左端用空格补足,使得输出数据的位数等于n;当数据的实际位数大于m时,则按实际位数输出数据,这时指定的宽度不起作用。%mf或%me:只指定宽度,小数位数按系统指定的形式输出。%.nf或%.ne:不指定宽度,只指定小数位的位数输出形式。,14,14,3.3 格式输出printf函数,(1)宽度说明,为实型数据指定输出宽度,#includevoid main()float a=1.23456789;printf(%fn%3.1fn%15.4fn%15.10fn,a,a,a
17、,a);double b=1.23456789;printf(%fn%3.1fn%15.4fn%15.10fn,b,b,b,b);double c=1.23456789987654321;printf(%fn%17fn%19.19fn%15.10fn,c,c,c,c);,运行结果:1.2345681.2 1.2346 1.23456788061.2345681.2 1.2346 1.23456789001.234568 1.2345681.2345678998765433000 1.2345678999,#includevoid main()float a=1234.5678;printf(%
18、fn%3fn%15fn,a,a,a);double b=1234.5678;printf(%fn%.3fn%.4fn%.7fn,b,b,b,b);,运行结果:1234.5677491234.567749 1234.5677491234.5678001234.5681234.56781234.5678000,15,15,3.3 格式输出printf函数,二、格式控制2.修饰符,(2)输出数据左对齐符号“-”,格式控制在指定输出数据的宽度后,如果指定的宽度m大于数据实际的宽度,则输出数据时自动右对齐,左端用空格补足,此时,也可以指定输出结果左对齐,方法是在宽度前加上“-”符号,使输出的数值向左端靠
19、,右端补空格。形式如下:,-md-mo-mx或%-mX%-mf%-m.nf%-me 或%-mfE%-m.ne 或%-m.nE,#includevoid main()float a=1234.5678;printf(%fn%3fn%-15fn,a,a,a);double b=1234.5678;printf(%fn%.3fn%.4fn%.7fn,b,b,b,b);,运行结果:1234.5677491234.5677491234.5677491234.5678001234.5681234.56781234.5678000,16,16,3.3 格式输出printf函数,二、格式控制2.修饰符,(3)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 顺序 结构
链接地址:https://www.31ppt.com/p-5502269.html