next...for语句中出现print语句.

来源:百度知道 编辑:UC知道 时间:2024/06/10 07:25:54
next...for循环中出现print语句.
每次循环print一次.
请问这时,新的循环开始时,新的print语句会出现在什么位置?还是从屏幕默认的左上角吗?
例如:Dim a As Integer, b As Integer, c As Integer
For a = 5 To 1 Step -1
Print Tab(11 - a * 2);
b = 1
Do While b <= (2 * a - 1)
Print "#"; " ";
b = b + 1
Loop
Print " ";
c = 1
Do While c <= (11 - 2 * a)
Print "$"; " ";
c = c + 1
Loop
Next a
以上的代码可以用来显示图形(你可以自己添个按扭复制后F5看下)
代码中所有的 print后跟的都是”;”(紧凑格式).
可是一个循环结束后还是会换行输出.
再如:Dim a As Integer, s As Integer, n As Integer
s = 0
n = 0
For a = 1 To 100
s = s + a
n = n + 1
Print Tab((n Mod 7) * 7 + (7 - Len(Str$(s)))); s;
Next a
这时,只要n<7,每次循环,print都是按紧凑格式横着输出的.

这是为什么?谢谢~!

tab 与 Print # 语句或 Print 方法一起使用,对输出进行定位。

语法

Tab[(n)]

可选的 n 参数是在显示或打印列表中的下一个表达式之前移动的列数。若省略此参数,则 Tab 将插入点移动到下一个打印区的起点。这就使 Tab 可用来替换区域中的逗号,此处,逗号是作为十进制分隔符使用的。

说明

如果当前行上的打印位置大于 n,则 Tab 将打印位置移动到下一个输出行的第 n 列上。如果 n 小于 1,则 Tab 将打印位置移动到列 1。如果 n 大于输出行的宽度,则 Tab 函数使用以下公式计算下一个打印位置:

n Mod width

例如,如果 width 是 80,并指定 Tab(90),则下一个打印将从列 10 开始(90/80 的余数)。如果 n 小于当前打印位置,则从下一行中计算出来的打印位置开始打印。如果计算后的打印位置大于当前打印位置,则从同一行中计算出来的打印位置开始打印。

输出行最左端的打印位置总是 1。在使用 Print # 语句将数据写入文件时,最右端的打印位置是输出文件的当前宽度,这一宽度可用 Width # 语句设置。

第一循环打印"# $ "后已到了6位置