c语言第3章顺序结构程序设计.ppt
《c语言第3章顺序结构程序设计.ppt》由会员分享,可在线阅读,更多相关《c语言第3章顺序结构程序设计.ppt(35页珍藏版)》请在三一文库上搜索。
1、本章要求:,了解结构化程序的算法描述 掌握C语言中数据的输入/输出方法 顺序结构程序设计,本章重点: C程序中数据的输入/输出方法,顺序、选择、循环 (分支),一、什么是算法,算法是解决一个问题采取的方法和步骤的描述 。,1有穷性:算法须在执行有穷多个计算步骤后终止 2确定性:算法的每个步骤必须都是精确定义的、无二义性的; 3有效性:算法中的每一个步骤必须有效地执行,并能得到确定结果; 4输入:一个算法中可以没有输入,也可以有一个或多个输入信息 5输出:一个算法应有一个或多个输出,算法的特性:,(一)自然语言与伪代码表示算法 自然语言就是指人们日常使用的语言,可以是汉语、英语或其它语言。 伪代
2、码是用介于自然语言和计算机语言之间的文字和符号(包括数学符号)来描述算法。,二、算法的表示,例的伪代码表示如下: Begin(算法开始) 输入 A,B,C IF AB 则 AMax 否则 BMax IF CMax 则 CMax Print Max End (算法结束),例: 输入三个数,然后输出其中最大的数。 算法可以写成: (1) 输入A,B,C。 (2) 若AB,则MAX A;否则MAXB。 (3) 若CMAX,则MAX C。 (4) 输出MAX,MAX即为最大数。,结构化程序的算法描述:,1常用的流程符号 l 起止框:表示算法的开始和结束。 l 处理框:表示初始化或运算赋值等操作。 l
3、输入输出框:表示数据的输入输出操作。 l 判断框:表示根据一个条件成立与否,决定执行两种不同操作中的其中一个。 l 流程线:表示流程的方向。,(二)用流程图表示算法,用流程图表示如下图所示:,例: 输入三个数,然后输出其中最大的数。,(三)用NS流程图表示算法,C语言中实现顺序结构的语句:赋值语句、变量声明语句、符号常量声明语句等。,三、赋值语句,赋值语句是由赋值表达式再加分号构成的表达式语句。 其一般形式为: 变量=表达式;,1赋值符“=”右边的表达式可以又是一个赋值表达式 因此,下述形式是正确的:变量=(变量=表达式); 其展开之后的一般形式为:变量=变量=表达式;,例如:a=b=c=d=
4、e=5;按照赋值运算符的右结合性,因此实际上等效于: e=5; d=e; c=d; b=c; a=b;,2.注意变量说明中给变量赋初值和赋值语句的区别。 给变量赋初值是变量说明的一部分,赋初值后的变量与其后的其它同类变量之间仍必须用逗号间隔,而赋值语句则必须用分号结尾。 3.在变量说明中,不允许连续给多个变量赋初值。 如下述说明是错误的:int a=b=c=5; 必须写为 int a=5,b=5,c=5; 而赋值语句允许连续赋值。 4.注意赋值表达式和赋值语句的区别。赋值表达式是一种表达式,它可以出现在任何允许表达式出现的地方,而赋值语句则不能。 下述语句是合法的:if(x=y+5)0) z=
5、x; 下述语句是非法的:if(x=y+5;)0) z=x; 说明:右边的表达式可以是变量、常量、函数调用等表达式。,5语句中的“=”称为赋值号,它不同于数学中的等号,如A=A+1在数学中是不成立的,但在程序设计中表示取变量A单元中的值,将其加1后,仍然放回到A变量的存储单元 。 6、赋值符号“=”左边一定只能是变量名,不能是常量、符号常量、表达式。,例如:z=x+y; 是合法的。 下面的赋值语句都是错的: 5=x; /* 左边是常量 */ sin(x)=20; /* 左边是函数调用,即是表达式 */,7赋值符号“=”两边的数据类型一般要求应一致。 如果两边的类型不同,则以左边变量或对象属性的数
6、据类型为基准,如果右边表达式结果的数据类型能够转换成左边变量或对象属性的数据类型,则先强制转换后,赋值给左边的变量。若都是数值型,但精度不同,强制转换成左边变量的数据精度。,例如,有定义 int x; float y; x=3.5415926; /* 取其整数赋值给x,x的值为3 */ y=123; /* 将整数123转换实数123.0,赋值给y,执行 后,y的值是123.0 (小数点补六个0)*/,数据输入/输出的概念,内存,RAM,从键盘将数据输入,从数据文件读入,将数据输出到屏幕,将数据输出到文件,数据输入/输出是相对计算机内存,在语言中所有的数据输入输出都是由库函数完成的。 因此都是函
7、数语句。在C语言中使用库函数时,要使用预编译命令#include 将相关的头文件(*.h)包含到用户源文件中。 使用形式: #include “头文件” 或 #include ,说明:1. 标准输入/输出头文件是:stdio.h 2. printf() 和 scanf()函数不需要头包含文件 3.常用的输入输出函数有: printf() scanf() putchar() getchar(),四、数据格式输入scanf()函数,scanf()的功能:从键盘上输入数据,该输入数据按指定的输入格式被赋给相应的输入项。 函数一般格式为: scanf(“控制字符串“,输入项地址列表); 控制字符串规定
8、数据的输入格式,其内容由格式说明和普通字符两部分组成。 输入项地址列表由一个或多个变量地址组成,各变量地址之间用逗号“,”分隔。 scanf()中各变量要加地址操作符,表示如下: &变量名,scanf(“%d,%d,%c“,,控制字符串的两个组成部分:格式说明和普通字符。,1. 格式说明 格式说明规定输入项中的变量以何种类型的数据格式被输入, 形式是: % 各个格式字符及其意义见表3-3。,各修饰符是可选的,这些修饰符是: (1)字段宽度 (2) l和h:可与d、o、x一起使用,l表示输入数据为长整数,h表示输入数据为短整数。 (3)字符*:表示按规定格式输入但不赋予相应变量,作用是跳过相应的
9、数据。,例:scanf(“%3d”,&a);输入123456,按宽度输入一个整数123赋给变量a。,例:scanf(“%ld%hd“,&x,&i);x按长整型读入,i按短整数读入。,例如:scanf(“%d%*d%d”,&x,&y,&z);执行该语句,若输入为“ ” 结果为x=1,y=3,z未赋值,被跳过。,/* EX3-11.C */ #include main() int x,y; scanf(“%2d%*3d%4d“, ,2.普通字符 普通字符包括空格、转义字符和可打印字符。 (1)空格 在有多个输入项时,一般用空格或回车作为分隔符,若以空格作分隔符,则当输入项中包含字符类型时,可能产生
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 顺序 结构 程序设计
链接地址:https://www.31doc.com/p-2102465.html