文档库 最新最全的文档下载
当前位置:文档库 › 高二数学第一章算法初步1.2.3

高二数学第一章算法初步1.2.3

高二数学第一章算法初步1.2.3
高二数学第一章算法初步1.2.3

1.2.3循环语句

课时目标

1.理解给定的两种循环语句,并会应用.

2.应用两种循环语句将具体问题程序化,搞清当型循环和直到型循环的联系和区别.

1.循环语句

循环语句与程序框图中的循环结构相对应,

一般程序设计语言中都有直到型和当型两种循环语句结构,分别对应于程序框图中的直到型和当型循环结构.

名称直到型当型

格式DO

循环体

LOOP_UNTIL条件

WHILE条件

循环体

WEND

功能先执行一次DO和UNTIL之

间的循环体,再判断UNTIL后

的条件是否符合,如果不符

合,继续执行循环体,然后再

检查上述条件,如果条件仍不

符合,再次执行循环体,直到

条件符合时为止.这时计算机

不再执行循环体,跳出循环体

执行UNTIL语句后面的语句.

先判断条件的真假,如果条

件符合,则执行WHILE和

WEND之间的循环体,然后

再检查上述条件,如果条件

仍符合,再次执行循环体,

这个过程反复进行,直到某

一次条件不符合为止,这时

不再执行循环体,跳到

WEND语句后,执行WEND

后面的语句

对应

程序

框图

一、选择题

1.下列给出的四个框图,其中满足WHILE语句格式的是()

A.(1)(2) B.(2)(3) C.(2)(4) D.(3)(4)

答案B

解析WHILE语句的特点是“前测试”.2.下列算法:

①求和1

12+

1

22+

1

32+…+

1

1002;

②已知两个数求它们的商;

③已知函数定义在区间上,将区间十等分求端点及各分点处的函数值;

④已知三角形的一边长及此边上的高,求其面积.

其中可能要用到循环语句的是()

A.①②B.①③

C.①④D.③④

答案B

3.循环语句有WHILE和UNTIL语句两种,下面说法错误的是()

A.WHILE语句和UNTIL语句之间可以相互转化

B.当计算机遇到WHILE语句时,先判断条件真假,如果条件符合,就执行WHILE和WEND之间的循环体

C.当计算机遇到UNTIL语句时,先执行一次DO和UNTIL之间的循环体,再对UNTIL 后的条件进行判断

D.WHILE语句与UNTIL语句之间不可以相互转化

答案D

4.下面的程序运行后第3个输出的数是()

i=1

x=1

DO

PRINT x

i=i+1

x=x+1/2

LOOP UNTIL i>5

END

A .1

B .32

C .2

D .5

2

答案 C

解析 该程序中关键是循环语句, 第一次输出的数是1,

第二次输出的数是x =1+12=3

2,

第三次输出的数是x =1+12+1

2=2.

5.下边程序执行后输出的结果是( ) n =5S =0

WHILE S <15 S =S +n

n =n -1WEND PRINT n END

A .-1

B .0

C .1

D .2 答案 B

解析 由于5+4+3+2=14,这时仍满足条件“S<15”, ∴n =2-1=1时,S =14+1=15,

当执行完循环体n =1-1=0后,再判断条件,此时不满足条件“S<15”, 接着执行“PRINT n ”.所以n =0.

6.运行下面的程序,执行后输出的s 的值是( )

i =1

WHILE i <6 i =i +2 s =2*i+1 WEND PRINT s END

A .11

B .15

C .17

D .19 答案 B

解析 当i =3时,s =7,当i =5时,s =11, 此时仍满足条件“i <6”,因此再循环一次, 即i =7时,s =15,此时不满足“i <6”, 所以执行“PRINT s”,即s =15. 二、填空题

7.运行下面的程序,输出的值为__________.

S=0

i=1

WHILE S<18

S=S+i

i=i+1

WEND

PRINT i

END

答案7

解析由于循环体是先执行S=S+i,再执行i=i+1,然后进行判断,当S=1+2+3+4+5=15时,执行i=5+1=6,这时15<18成立,再循环一次S=15+6=21,i=6+1=7,这时再判断21<18不成立,于是执行“PRINT i”,即i=7.

8.下面程序表示的算法是________.

n=1

S=1

WHILE S<=5 000

S=S*n

n=n+1

WEND

PRINT n-1

END

答案求使1×2×3×…×n>5 000的n的最小正整数

9.下面是一个求20个数的平均数的程序,在横线上应填充的语句为________.

答案i>20

三、解答题

10.用UNTIL语句编写一个程序,输出使1+4+7+…+i≥300成立的最小的正整数.解

S=0

i=1

DO

S=S+i

i=i+3

LOOP UNTIL S>=300

PRINT i-3

END

11.分别用当型和直到型循环语句编写一个程序,计算2×4×6×…×100的值.解(1)当型:

i = 2

A=1

WHILE i<=100

A=A*i

i=i+2

WEND

PRINT A

END

(2)直到型:

i = 2

A=1

DO

A=A*i

i=i+2

LOOP UNTIL i>100

PRINT A

END

能力提升

12.读程序:

甲:乙:

INPUT i=1

S=0

WHILE i<=1000 S=S+i

i=i+1

WEND

PRINT S

END INPUT i=1000 S=0

DO

S=S+i

i=i-1

LOOP UNTIL i<1 PRINT S

END

对甲、乙两程序和输出结果判断正确的是() B.程序不同,结果不同

B.程序不同,结果相同

C.程序相同,结果不同

D.程序相同,结果相同

答案B

13.设计算法求1

1×2+1

2×3+

1

3×4+…+

1

99×100的值,并画出程序框图及编写程序.

解算法如下:

第一步:令S=0,i=1;

第二步:若i≤99成立,则执行第三步;否则,输出S,结束算法;

第三步:S=S+

1

i(i+1);

第四步:i=i+1,返回第二步.

程序框图:

方法一当型循环程序框图:程序如下:

S=

i=1

WHILE r<=99

S=S+1/(i*(i+1))

i=i+1

WEND

PRINT S

END

方法二直到型循环程序框图:程序如下:

S=0

i=1

DO

S=S+1/(i*(i+1))

i=i+1

LOOP UNTIL i>99

PRINT S

END

1.当型循环与直到型循环的区别

(1)当型循环先测试后执行,直到型循环先执行后测试;

(2)在当型循环语句中,是当满足条件时执行循环体,而在直到型循环语句中,是当不满足条件时执行循环体;

(3)对同一算法来说,当型循环语句和直到型循环语句中的条件互为反条件.

2.应用循环语句编写程序要注意以下三点

(1)循环语句中的变量一般需要进行一定的初始化操作,也就是要设置一些变量的初始值.

(2)循环语句在循环的过程中需要有“结束”的语句,程序中最忌“死循环”.

(3)在循环中要改变循环条件的成立因素.

程序每执行一次循环体,循环条件中涉及到的变量就会发生改变,且在步步逼近跳出循环体的条件.

新课标第一网系列资料https://www.wendangku.net/doc/191076274.html,

相关文档