tceic.com
简单学习网 让学习变简单
相关标签
当前位置:首页 >> 数学 >>

函数和过程练习题


一、选择题: 1、 下列函数首部或过程首部合法的为( ) A、function total(x:real); B、procedure ab(a,b:real):real C、 procedure sum D、 function f(var f:real):integer; 2、设有过程首部 procedure pro(var x,y:integer); 若 a,b 为整型变量,

其值分别为 5,6,则合法的过程调用语句是 A、pro(5,6) B、pro(b-1,2*a-4) C、pro(‘a’,’b’) D、pro(a,b) 3、若有以下程序 program exam1(input,output); var x,y:real; a,b,c:integer; procedure p1(a,b,c:real); var x:integer; begin …… end; begin …… end. 则下列说法中正确的是( ) A、主程序中 x 的作用域包含过程 p1 B、过程 p1 中 x 的作用域包含主程序 C、主程序中 x 的作用域和过程 p1 中 x 的作用域相同 D、主程序中 x 的作用域不包含过程 p1 4、若有以下程序 program exam2(input,output); var x,y:real; a,b,c:integer; procedure p2(a,b,c:real); var x:integer; begin …… end; begin …… end. 则下列说法中正确的是 A、y 的作用域包含过程 p2 B、y 的作用域不包含过程 p2 C、y 的作用域只限于过程 p2 D、y 的作用域和 x 的作用域相同 5、program test1(output); var x,y,z:integer; procedure silly1(x:integer; var y:integer); begin x:=5; y:=6; z:=7; writeln(x,y,z)

end; begin x:=1; y:=2; z:=3; silly1(x,y); writeln(x,y.z) end. 以上程序运行结果为 A、5 6 7 B、5 6 7 5 6 3 5 6 7 C、5 6 7 D、5 6 7 1 6 7 1 6 3 6、program test2(output); var x,y,z:integer; procedure silly2(x:integer; var y:integer); begin x:=5; y:=6; z:=7; writeln(x,y,z) end; begin x:=1; y:=2; z:=3; silly1(y,x); writeln(x,y.z) end. 以上程序运行结果为 A、5 6 7 B、5 6 7 5 6 3 6 2 3 C、5 6 7 D、5 6 7 1 6 3 1 6 7 7、program prog1(input,output); var x,y:integer; procedure proc1(i1,i2:integer); begin i1:=x+y; i2:=i1*y; end; begin x:=5; y:=10; proc1(x,y); writeln(x,y) end. 以上程序执行后的正确输出是( ) A、5 10 B、5 150 C、15 150 D、15 10 8、program prog2(input,output); var x,y:integer; procedure proc2(i1:integer, var i2:integer); begin i1:=x+y; i2:=i1*y; end; begin x:=5; y:=10; proc2(x,y);

writeln(x,y) end. 以上程序执行后的正确输出是( ) A、5 10 B、5 150 C、15 150 D、15 10 9、program main(output); var x,m,n:integer: y:real; procedure a (var x:integer; y:real); var m:integer; begin x:=x+1; m:=x+1; y:=m*3; n:=m end; begin x:=8; m:=5; n:=3; y:=1; a(m,y); writeln(x,m,n,y:4:1) end. 以上程序运行后的正确输出是 A、8 5 3 1.0 B、9 10 10 3.0 C、8 7 7 21.0 D、8 6 7 1.0 10、program main(output); function p(x:real; n:integer):real; begin if n=0 then p:=1.0 else if odd (n) then p:=x*sqr(p(x, n div 3)) else p:=sqr(p(x, n div 3)) end; begin writeln(p(2.0,7):6:1) end. 以上程序运行后的正确输出是 A、1.0 B、2 C、2.0 D、7 11、program exam(output); var a,b,c:integer; procedure proc(var a:integer; b:integer); begin a:=1; b:=2; c:=3; end; begin a:=5; b:=6; c:=7; proc(a,b); writeln(a:2,b:2,c:2) end. 以上程序的运行结果是( )A、1 6 3 B、1 2 3 C、1 6 7 D、5 6 7 12、program exam(input,output); var x:integer; procedure a; var x:integer;

begin writeln(x:1); x:=2; writeln(x:1) end; begin x:=1; a; writlen(x:1) end. 以上程序的运行结果是( ) A、29254(随机数) B、1 2 2 1 1 C、29254(随机数) D、1 2 2 2 2 13、已知函数说明如下: function f(n:integer):integer; begin if n=0 then f:=0 else if n>0 then f:=f(n-2) else f:=f(n+3) end; 则函数调用 f(5)的值是 A、0 B、1 C、-1 D、-2 14、program aa (output); var x,y,z: integer; procedure p(x,y:integer; var z:integer); begin z:=y-x-z end; begin x:=5; y:=7; z:=4; p(7, x+y+z, x); writeln(x,y,z) end. 以上程序运行后的结果是( ) A、-2 7 4 B、5 7 -2 C、5 7 4 D、4 7 4 15、program prog1(input,output); var a,b:integer; procedure p1(x:integer; var y:integer); begin y:=x+y; writeln(x:3,y:3) end; begin a:=5; b:=8; p1(a,b); p1(a+b,a); p1(a div b,b) end. 以上程序执行后的输出是( ) A、5 13 B、5 13 C、5 13 D、5 13 18 5 18 23 18 5 18 23 1 13 1 13 1 14 1 14 16、有下列函数: function f1(a:integer):integer; var n,d:integer; begin n:=0; d:=2*a; while d>=a do begin d:=d div 3; n:=n+1 end; f1:=n

end; 设 a,b,c 均为整型变量,下面的程序段均调用函数 f1, 执行时会出现死循环的程序段是( ) A、b:=100; B、for b:=1 to 5 do c:=2*(f1(b)+5); if f1(b)>3 then writeln(a:5,c:5); c:=f1(b*b); writeln(f1(b)) C、b:=1; D、b:=1; repeat while f1(b)>3 do b:=b+1 b:=f1(b*b)+f1(b); until f1(b)>3; 17、有下列函数说明: FUNCTION p(n, x : integer ):Integer; BEGIN IF n=0 THEN p:=1 ELSE IF n=1 THEN P:=X ELSE p:=Trunc(((2*n)*p(n-1,x)-(n-1)*p(n-2,x))/n); END; 执行语句 y:=p(3,5)后 y 的值是() A)30 B)34 C)21 D)14 18 有下列程序: Program xx (Output); Var x, y, z: integer; Procedure p(x:Integer; Var y,z:Integer); Begin z:=z+y+x end; begin x:=5; y:=6; z:=7; p(x+y+z,x,y); Writeln(x:4,y:4,z:4) End.. 的运行结果是() A)5 29 7 B)5 6 7 C)18 5 6 D)18 6 7 19 有下列函数说明 Function f(a,b,c:Integer) :Integer; Var t: Integer; Begin a:=3*a; t:=b Div c; f:=a+4*t End; 表达式 f(f(1,f(1,2,3),3),2,3)的值是() A) 21 B)3 C)7 D)25 20 设函数说明为 Function check(n,k:) Integer): Integer; Begin

Repeat m:=n mod 10; n:=n div 10; k:=k-1; Until k=0; check:=m end; 若在主程序中有调用语句 y:=check(3725,3) ,则 程序运行后 y 的值是() A)7 B)5 C)2 D)0 二、填空题 1、已知程序有以下说明 FUNCTION f (a, b, c : integer ):Integer; Begin F:=3*a+4*b div c End; 则执行语句 k:=f(1,2,3)后,k 的值是 执行语句 k:=f(1,2,1)- f(0,1,1)后,k 的值是 执行语句 k:=f(1f(1,2,3),-1)后,k 的值是 2、 函数 fn 使用递归方法求 1+2+3+…+n 的值。其值 返回为: 当 n<1,则返回 0; 当 n>=1,则返回 1+2+3+…+n 的值。 请填空完成它。 FUNCTION f n(n : integer ):Integer; Begin If n<1 then fn:=0 Else if n=1 then fn:= Else fn:=fn( )+n End; 3、设有以下程序 Program t4(Input,Output); Var i , j , k : integer; Procedure p(…); Begin I:=i-k; j:=j+k; End; Begin I:=2;j:=4;k:=6; p(k,i,j); Writeln(i:3,j:3,k:3);{输出 1} p(k+1,i,j); Writeln(i:3,j:3,k:3);{输出 2} End. 若过程首部的形式参数部分(…)分别为一下两种 形式,则该程序执行后的结果是 A、 (k,i:integer;var j:integer)输出 1 的结果是: 输出 2 的结果是: B、 (k:integer;var i, j:integer)输出 1 的结果是: 输出 2 的结果是:

4、Fibonacci(裴波那契)数列的规律是:前 2 个 数均为 1, 从第 3 个数开始每个数等于它前面两个数之 和,即:1,1,2,3,5,8,13,21,34,55,89, 144,233,377,...。已知任意一个大于 0 的整数可以 表示为若干个互不相同的 fibonacci 之数和。 例如:121=89+21+8+3 下面的程序是由键盘输入一个正整数 n,输出组成 n 的互不相同的 fibonacci 数。 例如:若输入 121 则输入 121=+89+21+8+3 本程序的算法如下: (n=121·为例) 1) 寻找小于或等于 n 的最大的 fibonacci 数 ( a 例如 89) , 并以 a 作为组成 n 的一个数输出。 2)若 n≠a 则以 n-a 作为新的任意正整数(例如 32) , 重复步骤 1.若 n=a,则结束。程序中的函数 find 返回 小于或等于 n 的最大的 fibonacci 数。 program text3(input,output); var n:integer; find(n:integer):integer; var a,b,c:integer; begin a:=1; b:=1; repeat c:=___(9)___; a:=b;b:=c; until b>=n; if b=n then find:=___(10)___ else find:=___(11)___ end; procedure p(n:integer); var a:integer; begin a:=find(n); write('+',a:4); if a<n then p ___(12)___ end; begin readln(n); write(n:5,'='); p(n); writeln end. 5、program exam(output); Var a,b :integer; Procedure p( var x b:integer; b :integer); Var m,n :integer; Begin M:=x*x; x:=x+5;y:=y+5; n:=n*y; Writeln(‘x=’,x:3,’y’,y:3,’m’,m:4,’n=’,n:4) End; Begin

A:=3;b:=3; P(a,b); P(a,b); P(a,b) End. 上述程序中的 是全局变量, 是局部变 量, 是数值参数, 是变量参数,程序执行 后变量 x,y,m,n,的值是 。 6.有以下函数说明: Function fun (n:integer ):integer; Var s,m:integer; Begin S:=0; Repeat M:=n mod 10; s:=s+m; n:=n div 10 Until n=0; Fun:=s End; 则函数调用 fun(231)的功能是 。 7.利用已定义的函数 SN 计算值: M = SIN(X) / (SIN(X—Y)SIN(X—Z)) 十 SIN(Y) / (SIN(Y—Z)SIN(Y—X))+SIN(Z) / (SIN(Z—X)SIN(Z—Y)) 函数定义为: FUNCTION SN(A,B,C:REAL):REAL; BEGIN SN:=SIN(A)/(SIN(A—B)*SIN(A—C)) END; ’ 调用程序有: READ(X,Y,Z); M:=———;WRITELN(M); 8.已知函数说明如下: FUNCTION DN(M:INTEGER):INTEGER; VAR VALUE:INTEGER; BEGIN IF M:=0 THEN VALUE:=5 ELSE IF M<0 THEN VALUE:=DN(M+1)+2 ELSE VALUE:=DN(M-1)-2; DN:=VALUE; END; 则 DN(3)的值为——(1)—— DN(DN(2))的值为——(2)——。 9.有下列函数说明 Function myf (a,b,c:integer):integer; Var t:integer; Begin a:=3*a; t:=b div c; myf:=a+4*t End; 则表达式 myf(1,myf(1,2,3),3)的值是 。


推荐相关:

vb函数与过程习题精选

vb函数与过程习题精选_数学_高中教育_教育专区。第三章 函数与过程 习题一、选择题 1.如果要声明一个全局性的符号常量,则应将该声明放在( )。 A.过程中 B....


VB第+7课函数过程练习答案

VB第+7课函数过程练习答案_理学_高等教育_教育专区。第 6 章 过程与函数 一、填空题 1.数组名作为过程或函数实参,相应的形 参传递方式为___ ___。 2.一维...


三角函数练习题(附详细解答过程)

三角函数练习题(附详细解答过程)_数学_高中教育_教育专区。三角函数 sin 2a ? cos2 ? ? 1 1.已知 tan( ? ? ) ? ,(1)求 tan? 的值; (2)求 的值...


Java构造方法练习题

Java构造方法练习题_IT认证_资格考试/认证_教育专区...写一个构造方法,以便于简化初始化过程,如: Wu...11、 创建一个类,为该类定义三个构造函数,分别...


二次函数配方法练习

二次函数配方法练习_数学_自然科学_专业资料。1. 抛物线 y=2x2-3x-5 配方后...已知二次函数 y=x2+4x-3,配方后为 当 x= ___时,函数 y 有最值___,...


异常处理_存储过程_函数练习题(参考答案)

异常处理_存储过程_函数练习题(参考答案)_IT/计算机_专业资料。java1.1. 练习题: 练习题:补充练习 1、编写一个存储过程,用于登陆用户的验证,过程的输入是一个...


第2章 平稳过程习题答案

第2章 平稳过程习题答案_工学_高等教育_教育专区。第2章 平稳过程习题答案第...mY 11.平稳过程 { X (t ),?∞ < t < +∞} 的相关函数为 R X (τ...


随机过程习题

随机过程习题_工学_高等教育_教育专区。随机过程复习 一、回答: 1、什么是宽平稳随机过程? 2、平稳随机过程自相关函数与功率谱的关系? 3、窄带随机过程的相位服从...


VB习题 过程和函数

VB习题 过程和函数_初二数学_数学_初中教育_教育专区。关于过程和函数习题 第五章 过程和函数 对于复杂的程序,结构化程序设计就是对一个复杂的问题采用“分而...


数值计算方法 练习题

求证: (2)利用(1)中的公式正向递推计算时误差增大;反向递推时误差函数减小。...系数矩阵有何特点,右下方矩阵是否对称,列主元在 何处,消元过程是否符合上题...

网站首页 | 网站地图
All rights reserved Powered by 简单学习网 www.tceic.com
copyright ©right 2010-2021。
文档资料库内容来自网络,如有侵犯请联系客服。zhit325@126.com