新手学VB,求教,为什么我用了i=i+1后运算结果就只是1+
vb吧
全部回复
仅看楼主
level 2
忘忧º逍遥
楼主
新手学VB,求教,为什么我用了i=i+1后运算结果就只是1+2+3+4+...+10的值,去掉了i=i+1后,结果就是1+1+2+1+2+3+....+1+2+3+...+10的总值(图一是想达到图三第二题的效果)
图二,无论我输入的n为何值,输出的结果永远是0,求各位大佬解答,感谢!!!(๑´∀`๑)(图二是想达到图三第三题的效果)
2020年04月12日 08点04分
1
level 15
初音✨七奈
图一,Next i自带i=i+1的效果,你再写i=i+1就多加了,然后加的数就减少了(其实那样你算的是1+(1+3)+(1+3+5)...,只是恰好算出来一个55而已)
图二,把"Text1.Text"的双引号去掉
2020年04月12日 08点04分
2
忘忧º逍遥
谢谢(*^ω^*)
2020年04月12日 09点04分
忘忧º逍遥
我双引号去了还是等于零(´ . .̫ . `)
2020年04月12日 09点04分
初音✨七奈
@忘忧º逍遥
把y的类型改成Single(!)或者Double(#)
2020年04月12日 12点04分
level 1
Android將夜
哪个学校啊
2020年04月27日 07点04分
3
level 11
璐村惂鐢ㄦ埛_0748V5Z馃惥
首先,赞一下这个提问的方式,将问题描述的比较清楚。
2020年04月27日 08点04分
4
level 11
璐村惂鐢ㄦ埛_0748V5Z馃惥
第一图中,i=i+1会导致循环语句组只执行5次,i的值分别是1、3、5、7、9,s的值分别是1、4、9、16、25,而z=1+4+9+16+25,最终为55,与1+2+3+4+...+10结果相同纯属巧合,而不是必然。
第二图,正如二楼米库大侠所说,分子小、分母大,分数值小于1;赋值给一个整形数会被四舍五入,有些被记为0,有些被记为1.具体的说i/(i+2)>0.5就会记为1,这个条件将在i>2的时候发生。当n=3时y=1.当然这是说你改正n赋值里面的引号之后的情况。原因就是y是整形数。
2020年04月27日 08点04分
5
level 11
璐村惂鐢ㄦ埛_0748V5Z馃惥
另外,建议楼主,发现结果不符合与其时,用F8单步运行,逐步查看运行顺序和各个值的变化。
2020年04月27日 08点04分
6
1