【www.rzshzz.com--信息技术】
第八章 程式序设计个性化----函数和子程序一、学习目标
1.掌握模块化程序设计思想
2.掌握函数与子程序的定义及使用
3.理解全局变量与局部变量
4.了解参数的传送过程
二、教学重点
掌握模块化程序设计
三、教学难点
掌握函数与子程序的定义及使用
四、教学方法
1.演示法。
2.实践法。
五、教学手段与教学媒体
多媒体网络教室。
六、课时安排
1课时。
七、教学过程
“模块化程序设计”中的“模块”是指:完成程序全部或部分任务的独立源程序文件。
程序的每一个模块可以是子程序或函数,它是通过执行一系列语句来完成一个特定的操作过程,常称为“过程”。
“执行一个过程”——调用一个子程序或函数;
一、自定义函数
qbasic函数:
①标准函数
②自定义函数
③外部函数
1、单行自定义(def)函数
语句函数——用一个语句定义一个函数
(1). 一般格式;
def fn<名字>(<参数>)=<表达式>
例1. 已知圆的半径r,求圆的面积:s=πr2
def fns(r)=3.14159*r*r
print fns(3)
end
例2.def fns$=”this is a string”
print fns$
例3. 求以下公式:
def fnc(a,b)=sqr(a*a+b*b)
print fnc(3,4)
(2).说明
• 函数名由两部分组成
fn s
自定义函数标志(fn),用户定义名(一个字母s);
• 参数可有多个,但调用时的参数(实参)与定义时的
参数(形参)要一致。
2、多行自定义(def)函数
用多行语句来定义一个函数。
(1)、一般格式
def fn<名字>(<参数>)
......
fn<名字>=<表达式>
end def
例4、定义函数f(n)=1+2+...+n
def fns(n)
s=0
for i=1 to n
s=s+i
next i
fns=s
end def
for n=1 to 100
print fns(n)
next n
end
(2)、说明
(i)形式参数——定义函数的自变量
实际参数——调用函数时的参数。
(ii)函数先定义后使用,即习惯把def语句
放在程序的开头。
二、块内子程序
1、gosub-return 语句
子程序定义:
<标号或行号>:
......
return
子程序调用:
gosub <标号或行号>
例5:求4!+5!+6!
s=0
n=4: gosub f:s=s+p
n=5: gosub f:s=s+p
n=6: gosub f:s=s+p
print “4!+5!+6!=”;s
end
f: p=1
for i=1 to n
p=p*i
next i
return
2、on gosub-return 语句
(1).一般格式
子程序定义:
<标号>:
......
return
子程序调用:
on <表达式> gosub <子程1>,<子程2>,…,<子程n>
例:“小学生算术练习”——轮流出一个二位数和一个一位数的加法、减法和乘法的题目,共出十题,每题 10分。
randomize
for i=1 to 10
a=int(90*rnd)+10
b=int(9*rnd)+1
p=i mod 3 + 1
on p gosob a1,a2,a3
next i
print "n=";n*10
end
a1: print a;"+";b;"="; 共3页,当前第1页123