第八章程式序设计个性化教案

2021-06-14 教案

  一、学习目标

  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 t n

  S=S+i

  Next i

  fns=S

  END DEF

  Fr n=1 t 100

  Print fns(n)

  NEXT n

  END

  (2)、说明

  (i)形式参数——定义函数的自变量

  实际参数——调用函数时的参数。

  (ii)函数先定义后使用,即习惯把DEF语句

  放在程序的开头。

  二、块内子程序

  1、gsub-return 语句

  子程序定义:

  <标号或行号>:

  ......

  return

  子程序调用:

  GOSUB <标号或行号>

  例5:求4!+5!+6!

  S=0

  n=4: gsub f:s=s+p

  n=5: gsub f:s=s+p

  n=6: gsub f:s=s+p

  print “4!+5!+6!=”;s

  end

  f: p=1

  fr i=1 t n

  p=p*i

  next i

  return

  2、n gsub-return 语句

  (1).一般格式

  子程序定义:

  <标号>:

  ......

  return

  子程序调用:

  ON <表达式> gsub <子程1>,<子程2>,…,<子程n>

  例:“小学生算术练习”——轮流出一个二位数和一个一位数的加法、减法和乘法的题目,共出十题,每题 10分。

  RANDOMIZE

  fr i=1 t 10

  a=int(90*RND)+10

  b=int(9*RND)+1

  p=i d 3 + 1

  ON p GOSOB a1,a2,a3

  Next i

  Print "n=";n*10

  END

  a1: print a;"+";b;"=";

  input c

  if c=a+b then n=n+1

  return

  a2: print a;"-";b;"=";

  input c

  If c=a-b then n=n+1

  Return

  a3: print a;"*";b;"="

  Input c

  If c=a*b then n=n+1

  Return.

  (2)、说明:

  <表达式>的值不是整数时,按四舍五入处理,值为0或大于n则不起作用,值为负时系统给出错误信息——“不正确的函数调用”。

  3、ON E(n) GOSUB-RETURN 语句

  (1)、调用格式

  ON E(n) GOSUB <标号>

  其中n是数值表达式,代表一个“陷阱键”。n的值与  设定键的对应关系如下:

  n值键名

  1~10   功能键F1~F10

  11方向键↑

  12方向键←

  13方向键→

  14方向键↓

  例: 求和式:S=12+22+...+n2   n=100000

  ON E(2) GOSUB pri

  E(2) ON

  S=0

  Fr i=1 t 100000

  S=S+i*i

  NEXT i

  pring “s=”;s

  end

  pri:print “n5

【第八章程式序设计个性化教案】相关文章:

《荔枝图序》教案设计 教案教学设计12-06

《〈激流〉总序》教案 教案教学设计12-06

滕王阁序教案 教案教学设计12-06

《名人传》序教案 教案教学设计12-06

《愚溪诗序》教案 教案教学设计12-06

《滕王阁序》教案 教案教学设计12-06

有趣的漫画程式教学设计07-04

《愚溪诗序》教学设计 教案教学设计12-06

《伶官传序》教学设计 教案教学设计12-06