Sub ss()
x1 = 20: y1 = 0
x2 = 1: y2 = 7
x3 = 39: y3 = 7
x4 = 8: y4 = 18
x5 = 32: y5 = 18
For i = 0 To 6
For j = 0 To 40
If j - x4 >= (x1 - x4) * (i - y4) / (y1 - y4) And j - x5 <= (x1 - x5) * (i - y5) / (y1 - y5) Then
Debug.Print "*";
Else
Debug.Print " ";
End If
Next
Debug.Print
Next
For i = 7 To 18
For j = 0 To 40
If (j - x5 >= (x2 - x5) * (i - y5) / (y2 - y5) And j - x5 <= (x1 - x5) * (i - y5) / (y1 - y5)) Or (j - x4 >= (x1 - x4) * (i - y4) / (y1 - y4) And j - x4 <= (x3 - x4) * (i - y4) / (y3 - y4)) Then
Debug.Print "*";
Else
Debug.Print " ";
End If
Next
Debug.Print
Next
End Sub
既然紧急,那就紧急处理,直接用Print方法打印五角星。
private sub form_load()
me.show
print " *"
print " * *"
print "* *"
... '自己补完
end sub
这个利用循环语句输出的话比较麻烦,因为五角星不是很好表示的。不像三角形和梯形菱形那样左右都是对称的。要考虑他的算法也不是不可以,但会复杂的,要简单的话就想这位说的饿一样,直接打印,自己控制。
循环比较麻烦 你还是用楼上那位直接打印得了
你们太有才了。。