初学者的几个小疑问? 谢谢 !

showtime84 2005-12-15 09:27:11
dim p as integer,i as integer
p=1
for i=1 to 5
p=p+(2*i-1)/(2*i+1)
if p>=20 then exit for
next i
print i,p
这段程序中(2*i-1)/(2*i+1)在几次循环中得到的是什么值? 小数吗?

dim p as integer,i as integer,n as integer
p=2:n=20
for i=1 to n step p
p=p+2
n=n-3
i=i+1
if p>=10 then exit for
next i
print i,p,n
那个step p 这个步长一直是2吗? 还是会随下面的p=p+2所改变?

最后一个问题,请问怎么在调试当中,中断一下看当时变量的值,谢谢!
...全文
218 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
qyarron 2005-12-27
  • 打赏
  • 举报
回复
dim p as integer '注意P定义为整数
p=p+小数, 为是一直是1吗?因为P只能取整数,后面的小数对它来讲无意义
showtime84 2005-12-27
  • 打赏
  • 举报
回复
那就是了小数没有意思
也就是p=p 也就一直是1 我就是一直不明白这个!
showtime84 2005-12-26
  • 打赏
  • 举报
回复
dim p as integer,i as integer
p=1
for i=1 to 5
p=p+(2*i-1)/(2*i+1)
if p>=20 then exit for
next i
print i,p
我还是看不懂,p怎么是5
p=p+小数, 为是一直是1吗? 我快疯的了!
Mars.CN 2005-12-20
  • 打赏
  • 举报
回复
还有你的第三个问题,你可以单步执行,或者设断点,然后再立即窗口中查看变量的值
?变量名
Mars.CN 2005-12-20
  • 打赏
  • 举报
回复
上面的那个问题(2*i-1)/(2*i+1)得到的是小数
但p是整数,所以即使是小数也没有意义
最后的结果 i=6 p=5
(2*i-1)/(2*i+1)循环中得到
0.333333333333333
0.6
0.714285714285714
0.777777777777778
0.818181818181818
showtime84 2005-12-20
  • 打赏
  • 举报
回复
有人来看一下吗? 谢谢!
showtime84 2005-12-19
  • 打赏
  • 举报
回复
dim p as integer,i as integer
p=1
for i=1 to 5
p=p+(2*i-1)/(2*i+1)
if p>=20 then exit for
next i
print i,p
这段程序中(2*i-1)/(2*i+1)在几次循环中得到的是什么值? 小数吗?

但这个程序是有结果的,为什么?
chengqiu_123 2005-12-18
  • 打赏
  • 举报
回复
是死循环~!
(2*i-1)/(2*i+1)不过i去何值都为0
showtime84 2005-12-17
  • 打赏
  • 举报
回复
比如当i=1时 (2*1-1)/(2*1+1) 这是等于几1/2不是不够吗?

再次感谢,就剩这最后一个问题了,谢谢!
zhangyijia 2005-12-17
  • 打赏
  • 举报
回复
回答第三个问题:在要中断的部分的代码中加入 Debug.Print 在调试菜单中单击逐语句调试,然后再设置断点 按F8 即可在立即窗口中看到
CrazyHosptial 2005-12-17
  • 打赏
  • 举报
回复
..........
关于查看变量的值建议你用list控件做输入查看他的值.
dim p as integer,i as integer,n as integer
p=2:n=20
for i=1 to n step p
p=p+2
n=n-3
i=i+1
if p>=10 then exit for
--------------------
list1.additem your data~
--------------------

next i
print i,p,n

zou19820704 2005-12-16
  • 打赏
  • 举报
回复
N 在循环中改变,到底要循环几次,我都不明白了!什么思维都不明白你了
tokimemo 2005-12-16
  • 打赏
  • 举报
回复
一般只在用随机数的时候使用,如果不在随机数前加该代码
每次随机数的规律是一样的,否则每次执行程序都会得到不同的数字
这个自己实践一下就会更加明白.
showtime84 2005-12-16
  • 打赏
  • 举报
回复
另外加一个问题randomize这个语句起什么作用的?
showtime84 2005-12-16
  • 打赏
  • 举报
回复
.........
showtime84 2005-12-16
  • 打赏
  • 举报
回复
谢谢楼上的几位的回答,关于第一个问题我还是不太明白.

比如当i=1时 (2*1-1)/(2*1+1) 这是等于几1/2不是不够吗?
fxj331072 2005-12-15
  • 打赏
  • 举报
回复
2.step p一直是2,p=p+2,一直变
3.先在错误设断点,然后运行,然后F8单步执行,你可以用鼠标指到变量上看数值来检查错误
iangenius 2005-12-15
  • 打赏
  • 举报
回复
第一个问题:你把i的值代入到函数式中,就可以得到结果,因为是/(去整),所以不是小数


第二个问题:因为你定义的不是静态的变量,所以它的值应该不会有变化,一直是2


对于第三个问题,没看懂你的意思!!

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧