问题 单项选择题

为了计算1+3+5+…+99的值,某人编程如下:
k=1
s=0
While k<=99
k=k+2:S=S+k
Wend
Ptint s
在调试时发现运行结果有错误,需要修改。下列错误原因和修改方案中正确的是______。

A) 循环前的赋值语句k=1错误,应改为k=0
B) 循环条件错误,应改为While k<99
C) 循环中两条赋值语句的顺序错误,应改为s=s+k:k=k+2
D) While…Wend循环语句错误,应改为For k=1 To 99…Next k

答案

参考答案:C

解析: 综合程序代码及题意,程序一开始就设置了变量k=l,表示计算式的第一项,在循环体中应先将其累加到和值s中,然后k再增加步长2变成下一个数3,依次类推,而本题的程序代码错在丢了第一项,即计算的是3+5+7+…+99+101的值而不是1+3+5+7+…+99的值,因此只需将语句s=s+k和k=k+2互换一下顺序即可。

解答题
单项选择题