) N4 T0 V. `+ h3 O这个图形就较为复杂了,观察发现,上半部分与2相同,下半部分将2中的图倒了过来。所以只要写打印下半部分的图就可以了,这段程序也可以通过对fun2改造来实现 # b; U! g2 J! \ Q8 O5 s打印下半部的程序:. b+ _/ P2 a5 ]9 e4 _: f
void fun3( int n ) / R8 [+ s. y+ W* c, E9 l" p{ + o: |" x; s @* e int s,x,y;) m, V7 H7 j7 ^- X0 C" R
//将循环的过程到了过来,注意开始y = n - 2,而不是n-1,至于为什么,自己试试就知道了7 M+ _! s. X& V' i
for ( y = n - 2; y >= 0; y-- ) & _5 W# T* u- {* R: h
{ * _( h3 U7 S$ P //循环体没有改变 ! ~2 T1 s: L y3 V9 H for ( s = 0; s < n - y - 1; s ++ )2 M3 d1 l; k! P
cout << '-'; 7 U; |7 ]9 k6 `+ E8 y for ( x = 0; x < 2 * y + 1; x++ )) D& t1 Z- n; r' A( s1 Y
cout << '*';9 E( ]3 R. S z7 ?
for ( s = 0; s < n - y - 1; s ++ ) * ^" Q, K( @7 _- E* t4 V: w cout << '-'; 0 a; X% X7 K( J8 c4 j( @# E2 k/ N7 Y cout << endl; / S$ z: E* \! @$ I }7 l2 P7 ?: r; I
}( q6 S' @% \- ]1 {4 X& a/ }
+ k" f! ^( r4 f0 o N: w
要打印整个图形:+ G1 E) i/ w. d3 p
# v0 i8 q+ X# c, m; ^: G7 X
void main() D0 Q. Q* H8 f{ 5 |& G0 T+ o+ h j' u fun2(5);//绘制上半部分 N, `2 U8 K, e+ S i: D! s fun3(5);//绘制下半部分3 V4 a: X, }' N, [) f/ ?! o# m
} ) i J1 ?# U, [2 E, Q) m1 h8 y ' P7 f' h0 F5 P$ l% e6 B. C3 v! b& P 4 {% @, d; y( r( F这些是比较简单的算法程序.我打算开一个算法入门区,为初学者提供服务.大家有问题的话可以一起交流.作者: Mouqx 时间: 2004-6-7 12:46
<> 这些是比较简单的算法程序.我打算开一个算法入门区,为初学者提供服务.大家有问题的话可以一起交流./ {7 U. T/ Z/ j3 [1 J+ U$ f. F
</P><>