- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
八年级信息技术教案第八章程式序设计个 性化----函数和子程序
第八章程式序设计个性化—函数和子程序
一、 学习目标
掌握模块化程序设计思想
掌握函数与子程序的定义及使用
理解全局变量与局部变量
了解参数的传送过程
二、 教学重点
掌握模块化程序设计
三、 教学难点
掌握函数与子程序的定义及使用
四、 教学方法
.演示法。
.实践法。
五、 教学手段与教学媒体
多媒体网络教室。
六、 课时安排
课时。
七、 教学过程
“模块化程序设计”中的“模块”是指:完成程序全部
或部分任务的独立源程序文件
程序的每一个模块可以是子程序或函数,它是通过执行 一系列语句来完成一个特定的操作过程,常称为“过程”。
“执行一个过程”一一调用一个子程序或函数;
一、自定义函数
QBASIc 函数:
标准函数
自定义函数
外部函数
单行自定义函数
语句函数一一用一个语句定义一个函数
一般格式;
DEFfn=
例1.已知圆的半径r,求圆的面积:S=n r2
DEFfns=3.14159*r*r
PRINTfns
END
例 2. DEFfns$= ” thisisastring ”
PRINTfns$
例3.求以下公式:
DEFfnc=SQR
Printfnc
说明
?函数名由两部分组成
fns
自定义函数标志,用户定义名;
?参数可有多个,但调用时的参数与定义时的 参数要一致。
多行自定义函数
用多行语句来定义一个函数。
一般格式
DEF fn fn=
END DEF
例4、定义函数f=1+2+...+n
DEFfns
S=0
FoRi=1ton
S=S+i
Nexti
fns=S
ENDDEF
Forn=1to100
Printfns
NEXTn
END
说明
DEF语句
DEF语句
二、块内子程序
gosub-return 语句
子程序定义:
return
子程序调用:
GoSUB
例 5:求 4! +5! +6!
S=0
n=4:gosubf : s=s+p
n=5:gosubf : s=s+p
n=6:gosubf : s=s+p print “4!+5!+6!= ” ;s
end
f:p=1
fori=1ton
p=p*i
nexti
return
ongosub-return 语句
一般格式
子程序定义:
return
子程序调用:
oN gosub,,…,
例:“小学生算术练习”一一轮流出一个二位数和一个
一位数的加法、减法和乘法的题目,共出十题,每题 10分
RANDolZE
fori=1to10
a=int+10
b=int+1
p=iod3+1
oNpGoSoBa1,a2,a3
Nexti
Print"n=";n*10
END
a1:printa;"+";b;"=";
inputc
ifc=a+bthenn=n+1
return
a2:printa;"-";b;"二";
inputc
Ifc=a-bthenn=n+1
Return
a3:printa;"*";b;"="
Inputc
Ifc=a*bthenn=n+1
Return.
说明:
,值为0或大于
,值为0或大于n则
“不正确的函数
oNEyGoSUB-RETURN
调用格式
oNEyGoSUB
n的值与其中n
n的值与
n值键名
?10
功能键F1?F10
1方向键f
方向键—
3方向键-
方向键J
例:求和式:S=12+22+...+n2
n=100000
oNEyGoSUBpri
EyoN
S=0
Fori=1to100000
S=S+i*i
NEXTi
? “ ”
pring s= ;s
end
preprint nosis ;s, I= ;i return
说明
设置陷阱:oNeyGoSUB
打开陷阱:Eyon
关闭陷阱:Eyoff
三、独立模块的子程序 建立子程序
格式:SUB[]
ENDSUB
子程序的调用
格式
DEcLARESUB[]
call[]
或
例: SUBstars fori=1ton PRINT “ * ” ;
Nexti
Print
ENDSUB
DEcLARESUBStars callStars
callStars
End
说明
i ) DECLARE为外部子程序说明语句,主程序调用多少个 子程序,就有多少个 DECLARE语句;
ii)call 语句的“ call ”可以省写,参数的括弧也
可不写;
女口: callstars
可写成:stars30
参数传递
值传递方式
callstars
SUBstars
地址传递方式
a=30
callstars
SUBstars
例:求 4!+5!+6!+7!
子程序:SUBFact f=1
fori=1ton
f=f*i
nexti
ENDSUB
主程序:DEcLARESUBFact
fo
文档评论(0)