asp中的for循环问题???

<%a1=5a2=10a3=66fori=1to5huizong=huizong+a&inext%>总和等于:<%=huizong%>问题:得出的结果为字符累加... <%
a1=5
a2=10
a3=66
for i=1 to 5
huizong=huizong+a&i
next
%>
总和等于:<%=huizong%>

问题:得出的结果为字符累加
展开
 我来答
百度网友f7e1d0e2a
2007-07-23 · TA获得超过247个赞
知道小有建树答主
回答量:190
采纳率:0%
帮助的人:221万
展开全部
huizong=huizong+a&i错误
你的a1,a2,a3是一个变量名,变量名是不能用变量+变量的形式得到的,你这样只能得到a和i的值的字符累加,在这个程序里,你没有给变量a赋值 那么 huizong+a&i实际上相当于 huizong+"0"&i,得到的结果应该是:0102030405。
如果此处你想要以循环的方式得到总和,建议将a1,a2,a3转换成数组,给你个例子
<%dim a(5)
a(1)=5
a(2)=10
a(3)=66
for i=1 to 5
huizong=huizong+a(i)
next %>
nnigou
2007-07-23 · TA获得超过983个赞
知道小有建树答主
回答量:1580
采纳率:0%
帮助的人:1548万
展开全部
huizong=huizong+a&i
改成
eval("huizong=huizong+a"&i)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yytoday
2007-07-23 · TA获得超过400个赞
知道小有建树答主
回答量:628
采纳率:0%
帮助的人:691万
展开全部
<%
dim a(10)
a(1)=5
a(2)=10
a(3)=66
huizong=0
for i=1 to 3
huizong =huizong+a(i)
next%>
总和等于:<%=huizong%>
这样才对
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友fbd573469
2007-07-23 · TA获得超过636个赞
知道小有建树答主
回答量:244
采纳率:0%
帮助的人:0
展开全部
你的代码最终结果是很奇怪的 "012345"

问题所在
你的语句 huizong=huizong+a&i 中的a&i 那是一个字符串表达式,是把当前a的值和当前i的值最为字符串联接起来,所得的结果就是一个字符串,因为没有变量a,所以a为空,a&i联接的结果就是:"1","2","3"等,而这些字符串不可能代表变量a1,a2,a3等。

而对于huizong=huizong+a&i 中的 + 由于是和字符串相加,所以被处理成字符串联接,而不是数字相加,按前面所说结果应该是"12345"而不是"012345"。 那这又是为什么呢?实际上如果你用的代码是huizong=huizong&a&i,这个结果就会是"12345"。

原来由于在表达式huizong=huizong+a&i中,VBS解释程序先碰到了huizong+ ,于是她默认huizhong是一个数值数据,所以在这里已经把huizhong的初值被设为0了,但后来碰到了字符串表达式a&i,才把+作为字符串链接来处理,于是前面就多了huizhong的初值0,从而得到"012345"

解决方法上面都提到了,不再重复
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式