顺序结构程序设计.ppt

上传人:wuy****n92 文档编号:54736488 上传时间:2022-10-29 格式:PPT 页数:20 大小:252KB
返回 下载 相关 举报
顺序结构程序设计.ppt_第1页
第1页 / 共20页
顺序结构程序设计.ppt_第2页
第2页 / 共20页
点击查看更多>>
资源描述

《顺序结构程序设计.ppt》由会员分享,可在线阅读,更多相关《顺序结构程序设计.ppt(20页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、第三章第三章 顺序结构程序设计顺序结构程序设计一、一、C语句概述语句概述二、二、流程图流程图三、三、顺序结构程序设计顺序结构程序设计四、四、字符数据的输入输出字符数据的输入输出五、五、格式输入输出格式输入输出六、六、程序举例程序举例一、一、C语句概述语句概述 一个程序应包括以下两方面内容:一个程序应包括以下两方面内容:(1)数据的设计)数据的设计数据结构。数据设计是通过一系列的数据描述语数据结构。数据设计是通过一系列的数据描述语句来实现,主要用来定义数据的类型、完成数据的初始化等;句来实现,主要用来定义数据的类型、完成数据的初始化等;(2)操作的设计)操作的设计操作步骤(即算法)。操作设计是通

2、过一系列的操作步骤(即算法)。操作设计是通过一系列的操作控制语句来完成,其作用是向计算机系统发出操作指令,以完成对数操作控制语句来完成,其作用是向计算机系统发出操作指令,以完成对数据的加工计算和流程控制。据的加工计算和流程控制。作为程序设计人员,必须认真考虑和设计数据结构和操作步骤,而这作为程序设计人员,必须认真考虑和设计数据结构和操作步骤,而这些都要通过语句的执行来实现。些都要通过语句的执行来实现。C语句通常分为以下语句通常分为以下5类:类:1表达式语句表达式语句 由表达式加由表达式加“;”组成的语句,称表达式语句。其一般形式为:组成的语句,称表达式语句。其一般形式为:表达式表达式;如:如:

3、a=3 /表达式表达式 a=3;/表达式语句表达式语句 再如:再如:i+/表达式表达式 i+;/表达式语句表达式语句 2函数调用语句函数调用语句 由函数加由函数加“;”组成的语句,称函数调用语句。其一般形式组成的语句,称函数调用语句。其一般形式为:为:函数名函数名(参数表列参数表列);如:如:scanf(%d,&num);/函数调用语句函数调用语句 printf(%dn,num);/函数调用语句函数调用语句 3空语句空语句 只有一个分号的语句,称空语句。其一般形式为:只有一个分号的语句,称空语句。其一般形式为:;通常用作后面章节提到的循环语句中的循环体,起着延时通常用作后面章节提到的循环语句中

4、的循环体,起着延时的作用。的作用。如:如:for(i=0;i1000;i+);/循环体是循环体是空语句空语句 也可用于还未实现函数的空函数体。也可用于还未实现函数的空函数体。如:如:void max();/表示一个表示一个待写函数待写函数4复合语句复合语句 用大括号用大括号“”把多条语句括起来成为复合语句。在程序中,应把复合语句看成是单条把多条语句括起来成为复合语句。在程序中,应把复合语句看成是单条语语句,即在语法的地位上相当于一条语句。其一般形式为:句,即在语法的地位上相当于一条语句。其一般形式为:语句语句1;语句语句2;语句语句n;如:如:sum=sum+i;i+;5控制语句控制语句 C语

5、言语言9种控制语句如下:种控制语句如下:(1)if()条件语句条件语句 (2)switch()多分支选择语句多分支选择语句 (3)while()while循环语句循环语句 (4)do while()do while循环语句循环语句 (5)for()for循环语句循环语句 (6)continue 结束本次循环语句结束本次循环语句 (7)break 中止执行中止执行switch语句或循环语句语句或循环语句 (8)goto 转向语句转向语句 (9)return 从函数返回语句从函数返回语句二、流程图二、流程图 在编写程序之前,首先要考虑解决问题的步骤,然后用流程图表示出来,最后在编写程序之前,首先要

6、考虑解决问题的步骤,然后用流程图表示出来,最后根据流程图编写程序代码。根据流程图编写程序代码。美国国家标准化协会(美国国家标准化协会(ANSI)规定了一些常用的流程图符号如图)规定了一些常用的流程图符号如图3-1所示,已所示,已被世界各国计算机工作者普遍采用。被世界各国计算机工作者普遍采用。常用流程图的图框说明如下:常用流程图的图框说明如下:(1)起止框:表示程序的开始和结束;)起止框:表示程序的开始和结束;(2)输入输出框:在框内写出输入项或输出项;)输入输出框:在框内写出输入项或输出项;(3)判断框:框内写明条件,有一个入口,两个出)判断框:框内写明条件,有一个入口,两个出口,在出口处注明

7、条件是否成立;口,在出口处注明条件是否成立;(4)执行框:框内写明某一段程序或模块的功能,)执行框:框内写明某一段程序或模块的功能,有一个入口和一个出口;有一个入口和一个出口;(5)连接点:将画在不同地方的流程线连接起来;)连接点:将画在不同地方的流程线连接起来;(6)流程线:表示程序的执行顺序。)流程线:表示程序的执行顺序。三、顺序结构程序设计三、顺序结构程序设计 C语言是结构化程序设计语言。结构化程序设计的思想要求程序只能语言是结构化程序设计语言。结构化程序设计的思想要求程序只能用顺序结构、选择结构和循环结构三种基本结构来描述。这三种基本结构用顺序结构、选择结构和循环结构三种基本结构来描述

8、。这三种基本结构可以组成各种各样的程序,无论多么复杂的问题,都可以用这三种基本结可以组成各种各样的程序,无论多么复杂的问题,都可以用这三种基本结构来表示。本章只介绍顺序结构程序设计。构来表示。本章只介绍顺序结构程序设计。顺序结构是程序中最简单的一种结构,用来描述依次执行的操作,流顺序结构是程序中最简单的一种结构,用来描述依次执行的操作,流程如图程如图3-2(a)所示。程序执行时,先执行)所示。程序执行时,先执行A,再执行,再执行B。1973年,美国学者和提出了一种新的的流程年,美国学者和提出了一种新的的流程图图形式,形式,这这种流程种流程图图以二人名字姓氏的首字母来以二人名字姓氏的首字母来命名

9、,称命名,称为为N-S流程流程图图。图图3-2中(中(b)是)是N-S流流程程图图。这这种流程种流程图图从形式上看,完全不同于从形式上看,完全不同于传统传统的流程的流程图图,去掉了,去掉了传统传统流程流程图图中的流程中的流程线线,所有,所有结结构全部由矩形框表示,全部算法写在一个矩形构全部由矩形框表示,全部算法写在一个矩形框中。框中。N-S流程流程图图使用的使用的场场合也合也较较多,多,应该读应该读懂懂且能且能够绘够绘制制N-S流程流程图图。【例【例3-1】求一个数的平方根。】求一个数的平方根。经过分析,此问题的流程图如图经过分析,此问题的流程图如图3-3所示。然后,根据流程图编写代码:所示。

10、然后,根据流程图编写代码:#include#include void main()double x,y;scanf(%lf,&x);y=sqrt(x);printf(%lfn,y);说明:说明:l 通常简单的问题不画流程图,直接编写程序代码;稍复杂的问题先画流程图,根通常简单的问题不画流程图,直接编写程序代码;稍复杂的问题先画流程图,根 据流程图编写程序代码。据流程图编写程序代码。l#include 求平方根时,需要调用数学函数求平方根时,需要调用数学函数sqrt(),因此必须加此头文件,参见附录因此必须加此头文件,参见附录。l 对于对于double型的变量,输入的格式必须是型的变量,输入的格

11、式必须是“%lf”。l 对于对于double型的变量,输出的格式型的变量,输出的格式“%f”和和“%lf”都可以,通常用都可以,通常用“%lf”。四、字符数据的输入输出四、字符数据的输入输出 1.putchar()函数函数 该函数的作用是向终端输出一个字符。该函数的作用是向终端输出一个字符。其一般形式为:其一般形式为:putchar(参数参数);其中:参数可以是单字符常量、字符变量、其中:参数可以是单字符常量、字符变量、ASCII码、也可以是转义字符。码、也可以是转义字符。【例【例3-2】输出单个字符。】输出单个字符。#include void main()char c=A;putchar(A

12、);putchar(c);putchar(65);putchar(n);printf(%cn,c);2.getchar()函数函数 该函数的作用是从终端得到一个字符。该函数的作用是从终端得到一个字符。其一般形式为:其一般形式为:getchar();此函数无参数,函数的值就是从输入设备得到的字符。此函数无参数,函数的值就是从输入设备得到的字符。【例【例3-3】输入单个字符。】输入单个字符。#include void main()char c,d;c=getchar();scanf(%c,&d);putchar(c);putchar(d);putchar(n);说明:说明:l一般情况下,一般情况下

13、,getchar()和和putchar()、scanf()和和printf()配对使用。配对使用。五、格式输入输出五、格式输入输出1.printf()函数函数 该函数的作用是该函数的作用是输出若干个任意类型输出若干个任意类型的数据。的数据。(1)printf()函数的一般形式函数的一般形式 printf(格式控制格式控制,输出表列输出表列);如:如:printf(%d,%c,%fn,x,y,z);(2)格式字符格式字符 对不同类型的数据用不同的格式字符。对不同类型的数据用不同的格式字符。d格式符:格式符:用来输出十进制整数。用来输出十进制整数。%d,按整型数据的实际长度输出。,按整型数据的实际

14、长度输出。%md,m为指定的输出宽度。如果数据的位数小于为指定的输出宽度。如果数据的位数小于m,则左端补以,则左端补以 空格,若大于空格,若大于m,则按实际位数输出。,则按实际位数输出。%ld,输出长整型数据。,输出长整型数据。【例【例3-4】举例说明】举例说明“%d”的使用。的使用。#include void main()int a,b,c;long d;a=300;b=400;c=500;d=600;printf(a=%d,b=%5d,c=%2d,d=%ldn,a,b,c,d);(2)o格式符:格式符:以八进制数形式输出整数。以八进制数形式输出整数。(3)x(或(或X)格式符:)格式符:以

15、十六进制数形式输出整数。以十六进制数形式输出整数。(4)u格式符:格式符:用来输出用来输出unsigned型数据。型数据。(5)c格式符:格式符:用来输出一个字符。用来输出一个字符。(6)s格式符:格式符:用来输出一个字符串。用来输出一个字符串。%s,按字符串的实际长度输出。,按字符串的实际长度输出。%ms,输出的字符串占,输出的字符串占m列,如字符串本身长度大于列,如字符串本身长度大于m,则突破,则突破m 的限制,将字符串全部输出。若串长小于的限制,将字符串全部输出。若串长小于m,则左补空格。,则左补空格。%-ms,若串长小于,若串长小于m,则在,则在m列范围内,字符串向左靠,右补空格。列范

16、围内,字符串向左靠,右补空格。%,输出占,输出占m列,但只取字符串中左端列,但只取字符串中左端n个字符。这个字符。这n个字符输个字符输 出在出在m列的右侧,左补空格。列的右侧,左补空格。%-,其中,其中m、n含义同上,含义同上,n个字符输出在个字符输出在m列范围的左侧,右列范围的左侧,右 补空格。如果补空格。如果nm,则,则m自动取自动取n值,即保证值,即保证n个字符正常输出。个字符正常输出。【例【例3-5】举例说明】举例说明“%s”的使用。的使用。#include void main()printf(%s,%3s,%5.2s,%.4s,%-5.3sn,Intel,Intel,Intel,In

17、tel,Intel);(7)f格式符:格式符:用来输出实数(包括单、双精度),以小数形式输出。用来输出实数(包括单、双精度),以小数形式输出。%f,整数部分全部输出,输出,整数部分全部输出,输出6位小数。位小数。%,指定输出的数据共占,指定输出的数据共占m列,其中有列,其中有n位小数。如果数值长度小于位小数。如果数值长度小于m,则左端补,则左端补 空格。(空格。(m包括小数点)包括小数点)%-与与%基本相同,只是使输出的数值向左端靠,右端补空格。基本相同,只是使输出的数值向左端靠,右端补空格。【例【例3-6】举例说明】举例说明“%f”的使用。的使用。#include void main()fl

18、oat f=235.5674;printf(%f,%10f,%10.2f,%.2f,%-10.2fn,f,f,f,f,f);(8)e(或(或E)格式符:)格式符:以以“规范化的指数形式规范化的指数形式”输出实数。输出实数。(9)g(或(或G)格式符:)格式符:自动在自动在“%f”、“%e”两种格式中取输出数据占宽度较小的一种,两种格式中取输出数据占宽度较小的一种,且且 不输出无意义的不输出无意义的0。(。(“%g”格式符使用较少)格式符使用较少)2.scanf()函数函数 该函数的作用是该函数的作用是输入若干个任意类型输入若干个任意类型的数据。的数据。(1)scanf()函数的一般形式函数的一

19、般形式 scanf(格式控制格式控制,地址表列地址表列);如:如:scanf(%d,%c,%f,&x,&y,&z);(2)格式字符格式字符 格式字符的含义同格式字符的含义同printf()函数。函数。【例【例3-7】用】用scanf()正确地输入数据。正确地输入数据。#include void main()int x,y,z;scanf(%d%d%d,&x,&y,&z);printf(%d,%d,%dn,x,y,z);说明:说明:l图图3-10用用“空格键空格键”分隔三个值;图分隔三个值;图3-11用用“回车键回车键”分隔三个值;图分隔三个值;图3-12用用“tab键键”分隔三个分隔三个值。值

20、。【例【例3-8】用】用scanf()正确地输入数据。正确地输入数据。#include void main()int x,y,z;scanf(x=%d,y=%d,z=%d,&x,&y,&z);printf(%d,%d,%dn,x,y,z);说明:说明:lscanf()函数函数“格式控制格式控制”中的普通字符必须原样输入。中的普通字符必须原样输入。【例【例3-9】用】用scanf()正确地输入数据。正确地输入数据。#include void main()char x,y,z;scanf(%c%c%c,&x,&y,&z);printf(%c%c%c,x,y,z);说明:说明:l用用“%c”格式输入

21、字符时,空格、回车、格式输入字符时,空格、回车、tab键都作为有效字符输入。键都作为有效字符输入。3.使用使用printf()函数和函数和scanf()函数时的注意事项函数时的注意事项 (1)printf()函数输出数据时可以有精度,而函数输出数据时可以有精度,而scanf()函数输函数输 入数据时不能规定精度。入数据时不能规定精度。printf(n,x);/正确正确 scanf(%6.2f,&x);/错误错误 scanf(%f,&x);/正确正确 (2)printf()函数中函数中“格式控制格式控制”右边通常是变量,而右边通常是变量,而scanf()函数中函数中“格式控制格式控制”右边通常是

22、变量地址。右边通常是变量地址。printf(%fn,x);/正确正确 scanf(%f,&x);/正确正确 (3)printf()函数函数“格式控制格式控制”中可以有中可以有n,而,而scanf()函数函数 “格式控制格式控制”中不能有中不能有n。printf(%fn,x);/正确正确 scanf(%fn,&x);/错误错误 scanf(%f,&x);/正确正确六、程序举例六、程序举例【例【例3-10】两数交换位置。两数交换位置。#include void main()int num1,num2,temp;/变量的定义变量的定义 scanf(%d,%d,&num1,&num2);/输入值输入值

23、 temp=num1;num1=num2;num2=temp;/交换值交换值 printf(%d,%dn,num1,num2);/输出值输出值 说明:说明:l两数交换通常是定义一个变量作为过渡变量。两数交换通常是定义一个变量作为过渡变量。【例【例3-11】输入一个华氏温度,要求输出摄氏温度(保留】输入一个华氏温度,要求输出摄氏温度(保留1位小数)。位小数)。#include void main()float f,c;/变量的定义变量的定义 printf(请输入一个华氏温度请输入一个华氏温度:);scanf(%f,&f);/输入值输入值 c=*(f-32);/计算计算 printf(摄氏温度是摄氏温度是(保留保留1位小数位小数):%.1fn,c);/输出值输出值 说明:说明:l分子或分母至少有一个是小数,即、。否则,在分子或分母至少有一个是小数,即、。否则,在C语言中两个整数相除的结果是整数,语言中两个整数相除的结果是整数,即即5/9得得0。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 初中资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com