NOIP初赛资料-过程和函数

NOIP初赛资料-过程和函数

ID:41062353

大小:389.01 KB

页数:40页

时间:2019-08-15

NOIP初赛资料-过程和函数_第1页
NOIP初赛资料-过程和函数_第2页
NOIP初赛资料-过程和函数_第3页
NOIP初赛资料-过程和函数_第4页
NOIP初赛资料-过程和函数_第5页
资源描述:

《NOIP初赛资料-过程和函数》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、过程与函数过程和函数程序的基本结构顺序结构选择结构循环结构过程和函数说明:程序中可以只有主程序而没有子程序,但不能没有主程序,也就是说不能单独执行子程序。程序设计的基本思想:自顶向下、逐步求精程序的模块化标准函数有:标准函数的调用X:=abs(-10);Y:=sqrt(81);Z:=round(35.9);abs(x)/sqrt(x)/round(x)…例1-1:编程求12+22+...+1002的和PROGRAM sum(input,output);VARi:integer;s:longint;BEGINs:=0;fori:=1to100dos:=s+sqr(i);writeln('s

2、=',s);END.例1_2:编程求1!+2!+3!+...+10!的和。fac(i)一、函数的定义及调用Function函数名(形参表):函数类型;局部变量说明;begin语句1;…;函数名:=表达式;end;函数首部函数体将函数值传递给函数名函数的类型在表达式中调用:函数名(实参)如:x=Abs(n)abs为函数名,n为实参,函数类型为integerorreal注意:自定义函数先定义后使用。函数值通过函数名传送回调用程序。例1-2编写一个求n!的函数fac.functionfac(n:integer):longint;vark:integer;t:longint;begint:=1;

3、fork:=2tondot:=t*k;fac:=t;end;{endfac}函数说明函数首部局部变量说明形式参数函数执行部分将函数值传递到函数名中函数的结果类型注意:1、使用函数前应先说明。3、形参就是函数的自变量,其初值来源于主程序的调用,只有在程序的执行过程中调用了函数,形参才能得到具体的值并参与运算,得到函数值。注意:形参表类似于变量说明,但只能使用类型标识符,且不能直接使用类型。形参可缺省。4、函数的类型也就是函数值的类型,函数值将通过函数名传送回调用程序。5、函数体内所用的类型、常量、变量等只在本函数内有效,退出函数体后,分配的存储单元被释放。这些量与函数体外的同名变量无关。6

4、、在函数体中至少有一条将函数值传给函数名的赋值语句。2、函数首部以保留字function开头,函数名由用户自定义的一个标识符,用来存放最终函数值。beginS:=fac(3)+fac(5)+fac(7);Writeln(‘s=‘,s)End.例7-1编写一个求n!的函数fac.functionfac(n:integer):longint;vark:integer;t:longint;begint:=1;fork:=2tondot:=t*k;fac:=t;end;{endfac}函数说明函数首部局部变量说明形式参数函数执行部分将函数值传递到函数名中Programex1-2a(input,o

5、utput);vars:longint;主程序函数调用出现在表达式中若求3!+5!+7!的值,如何修改程序?调用函数时注意:1、自定义函数中的形参,不是实际存在的变量,故又称为虚拟变量,它们并不占用内存单元,只是在调用函数时,才临时开辟相应的内存单元,存放实在参数的值,如fac(3)中的3。它是在调用函数时的所用的自变量。形参实质上是实参的一个“替身”。在调用函数时,实参将值赋给形参,因此实参的个数、类型应与形参一一对应,并且要有确定的值。2、函数调用步骤是:首先在调用程序中计算实参的值,传送给对应的形参,接着执行函数体,最后将函数值返回给调用程序。3、函数的定义是静态的,若定义后未被调

6、用,则该函数永远不会被执行。例1-3计算如图所示的多边形面积。functionarea(a,b,c:real):real;varp:real;beginp:=(a+b+c)/2;area:=sqrt(p*(p-a)*(p-b)*(p-c));end;用海伦公式求三角形的面积:s=p(p-a)(p-b)(p-c)a,b,c为三角形的边长,p为半周长,即p=(a+b+c)/2Programex1-2(input,output);varb1,b2,b3,b4,b5,b6,b7,s:real;Beginreadln(b1,b2,b3,b4,b5,b6,b7);s:=area(b1,b5,b6)+

7、area(b2,b6,b7)+area(b3,b4,b7);writeln(‘s=’,s:10:3);End.函数首部三个形式参数函数area结果类型为实型给函数名area赋值调用函数分析:b1b5b6b2b3b4b72、过程定义及调用标准过程有:标准过程调用:read/readln/write/writelnRead(a,b,c);自定义过程的格式:Procedure过程名(形参表);局部变量说明;begin语句1;语句2;…en

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。