高中信息技术算法及程序设计VB(选修) 联系客服

发布时间 : 星期二 文章高中信息技术算法及程序设计VB(选修)更新完毕开始阅读08239765f80f76c66137ee06eff9aef8951e48dd

WORD格式整理

D、①输入的数存人n变量②如果n/2=Int(n/2)不成立,就显示n中值 4、下列程序段运行后,m的值为( A ) A=2: b=1: c=5

If A < b Then m = A Else m = b If c < m Then m = c 选项: A、1 B、2 C、5

D、提示错误,无答案

程序设计的循环结构

一、For-Next循环

For循环变量一般形式是:

For循环变量=初值To终值Step循环变量增量 循环体 Nxt循环变量

例题1:求s=1+2+3+4.....+100

Private Sub Form_Click() Dim i As Integer Dim sum As Integer sum = 0

For i = 1 To 100

sum = sum + i ' 循环体 Next i

Print \End Sub

例题2:Step循环变量增量

Private Sub Form_Click() For j = 3 To 15 Step 2 Print j Next j End Sub

循环变量的初值、终值、循环变量增量都是数值型。其中要重复执行的操作称为循环体,增量可正可负,如果没有设置Step,则增量的缺省值为1 1、 循环变量取初值;

2、 循环变量与终值比较,没有超过终值转3,否则循结束,接着执行循环语句的后继语句; 3、 执行一次循环体

4、 循环变量增加一个增量 5、 重复步骤2~4。

以上可以看出,For-Next循环变量是一种当型循环。说明

(a) For语句与Next语句必须成对出现,而且它们当中的“循环变量”必须是同一个

变量,如上例中均为I。

专业资料 值得拥有

WORD格式整理

(b) 当循环变量为正时,循环变量超过终值,是指循环变量的值大于终值时;若为负,

则是指循环变量的值小于终值。

入口 P A 出口 二、Do-Loop循环

For-Next循环的次数是确定的,但是有的问题只知道循环结束的条件,重复执行的次数事先并不知道,这是需要Do-Loop循环 格式一: Do While 条件 循环体 Loop

例题:求最大公约数

Private Sub Command1_Click() Dim a As Integer Dim b As Integer Dim r As Integer

a = Val(Text1.Text) b = Val(Text2.Text) r = a Mod b

Do While r <> 0 a = b b = r

r = a Mod b Loop

Text3.Text = Str(b) End Sub

Private Sub Command2_Click() End End Sub

专业资料 值得拥有

WORD格式整理

当VB执行Do While-Loop循环时,先判断指定的条件是否为真,若条件为真,执行循环体,条件为假时退出循环。 格式二: Do

循环体

Loop Until条件

这种循环的执行过程如图所示。进入循环体后,先执行一次循环体A,然后再检查条件P是否成立。如果不成立,就重复执行循环体A,直到条件P成立退出循环体。

A P N 例题:如果我国人口每年以平均1.5%的速度增长,问多少年后我国人口达到或超过15亿?设现在人口为12.3亿。

Private Sub Form_Click() Dim p As Single Dim r As Single Dim n As Integer p = 1230000000# r = 0.015 n = 0 Do

p = p * (1 + r) n = n + 1

Loop Until p >= 1500000000# Print n; \年后\人口=\End Sub

下列程序段执行结束后,变量y的值是(C)。 y=2

专业资料 值得拥有

WORD格式整理

Do while y<=6 y=y+y Loop

A、2 B、6 C、8 D、16

分析程序,写出执行结果。 Private Sub command1_click() Dim S As Integer,I As Integer S=0

For i=1 to 10 Step 2 S=S+i Next i

Print “S=”;s End Sub 答案:S= 25

(三)算法与问题解决 1、解析法 2、穷举法 3、递归法 综合分析

1、有5人,问第5人年龄,说比前面第4人小3岁,问第4. 3. 2人,都说比前面人小3岁,问第1人,说他的年龄为38岁。问第5人的年龄多大。用递归法解决此问题的正确步骤是( B )。 选项:

A、①定义age (n)函数 ②函数中当n>1时返回函数值为age (n-1)当n=1返回函数值为38 B、①定义age (n)函数 ②函数中当n>1时返回函数值为age (n-1)-3当n=1返回函数值为38 C、①定义age (n)函数 ②函数中不断地调用age (n-1)-3 D、①定义age (n)函数 ②函数中不断地调用age (n)函数自己 4、排序与查找数据 四、应用程序设计

1、程序设计的一般步骤 2、 简单程序设计 综合分析

1、a,b,c三变量存放不同的数,值a 最大,b 第二,比较好的算法是( ) A、①定义一个max(x,y)函数(值为 x,y 中的大值)② a = max(max(a,b),c) B、①如a < b就a = b ②如 a < c 就 a = c ?如 b b就a = b ②如 a > c 就 a = c ?如 b >c 就 b = c

D、①如a < b就两变量交换 ②如 a < c 就两变量交换 ?如 b

A、①定义求阶乘的函数用j c(n) ②主程序中用一个循环9次调用j c(n)函数进行累加 B、用一个程序完成:每一项阶乘用一个For/Next循环完成,整个程序包括9个循环 C、用解析法:s=1*2+1*2*3+1*2*3*4+…+1*2*3*4*5*6*7*8*9*10

专业资料 值得拥有