面试题-一个for循环输出一个棱形

王朝other·作者佚名  2006-01-10
窄屏简体版  字體: |||超大  

用一个for循环输出以下棱形

*

* *

* * *

* * * *

* * * * *

* * * * * *

* * * * * * *

* * * * * * * *

* * * * * * * * *

* * * * * * * * * *

* * * * * * * * *

* * * * * * * *

* * * * * * *

* * * * * *

* * * * *

* * * *

* * *

* *

*

int func( int n)

//输出菱形星形

{

char ch='*';

char str=' ';

int N=2*n-1;

int MAX=N*N-1;

int m;

--n;

for(int i=0;i<=MAX;i++)

{

m=n-i/N;

if(m<0)m=-m;

if(i%N==N-1)

{

if(i/N==n)cout<<ch;

cout<<endl;

}

else

{

if((i%N)>=m&&(i%N)<=(2*n-m)&&(i%N%2!=i/N%2)) cout<<ch;

else cout<<str;

}

}

return 0;

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航