3、15;第五次循环:S=15,n=6,S=15;第六次循环:S=21,n=7,S>15;结束∴n=7.5.下列算法语句的目的是( )S=0For a=1 To 4a=2*aS=S+aNext输出aA.计算2+22+23+24B.计算2+22+23C.计算23D.计算24[答案] D[解析] 本题输出的为最后的a值,共循环了4次,故输出24的值.6.如果以下程序运行后输出的结果是100,那么在程序中While后面的条件表达式应为( )S=0i=1Do S=S+i^3 i=i+1LoopWhile条件表达式输出SA.i>5B.i≤
4、4C.i≥4D.i≤5[答案] B[解析] 该程序中使用了DoLoop循环语句,当While后的条件表达式结果为真时,执行循环体,为假时结束循环,由于输出结果为100,因此条件应为i≤4.二、填空题7.下列算法:A=2B=1Do B=A*B A=A+1LoopWhile A≤5输出B该算法的功能是________.[答案] 计算1×2×3×4×5的值8.设计算法计算1+2+3+…+50的值时,如果用循环语句应用__________语句,循环次数为__________.[答案] For 50[解析] 因为知道循环次数,故应用For语句,其语句描
5、述为:S=0For i=1To50S=S+iNext输出S.三、解答题9.计算1+2+22+23+…+263,写出用DoLoop语句描述的算法.[解析] 用语句描述如下:S=1n=2i=1DoS=S+n^ii=i+1LoopWhile i<=63输出S一、选择题1.读程序,对甲、乙两程序和输出的结果判断正确的是( )甲:i=1000 乙: S=0 S=0 Do For i=1 To1000 S=S+i S=S+i i=i-1 i=i+1 LoopWhile i>=1 Next 输出 S 输出A.程
6、序不同,结果不同B.程序不同,结果相同C.程序相同,结果不同D.程序相同,结果相同[答案] B[解析] 甲程序是用DoLoop语句写的,乙程序是用For语句写的,但两者运行结果都是500500,S乙=1+2+3+…+1000,S甲=1000+999+…+1.2.以下语句用来计算( )S=1For i=1 To 10S=3*SNext输出S[答案] C[解析] 由循环体,S为3n的形式,由For i=1 To 10,∴S=310,故选C.二、填空题3.阅读下面的算法语句段:b=1For k=1 To 5 b=b*k If b>=15