<script language="vbscript" >
sub hh()
dim row,cols,i,j,spa
dim outputstring
for row=1 to 7
if row<7/2 then
cols=row*2-1
else
cols=(7-row)*2+1
end if
spa=(7-cols)/2+1
for j=0 to spa
outputstring=outputstring & " "
next
for i=1 to cols
outputstring=outputstring & "*"
next
outputstring=outputstring & chr(10)
next
msgbox outputstring
end sub
</script>
<form name="aa">
<input name="calculate" type="button" value="菱形" onclick="hh">
</form>
你知道为什么不对齐吗?
因为你的程序是按照空格和*号的数量的等比来排列的
但是用类似alert或msgbox显示出来的对话框,空格字符和*字符的宽度是不一样的
所以就不会对齐了,你可以试试我改的字符你看看就明白了
<script language="vbscript" >
sub hh()
dim row,cols,i,j,spa
dim oStr
for row=1 to 7
'计算当前第几行
if row<7/2 then
cols=row*2-1
else
cols=(7-row)*2+1
end If
'计算前面空格数
spa=(7-cols)/2
'前面的空格
for j=0 to spa
oStr=oStr & "#"
'oStr=oStr & "-"If row<>4 Then oStr=oStr & " "
next
'累加*号
for i=1 to cols
oStr=oStr & "="
Next
'输出
oStr=oStr & chr(10)
Next
msgbox oStr
end sub
hh()
</script>
<form name="aa">
<input name="calculate" type="button" value="菱形" onclick="hh">
</form>
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息