当前位置: 代码迷 >> C语言 >> 书后题求助,谢谢!
  详细解决方案

书后题求助,谢谢!

热度:240   发布时间:2005-01-24 11:02:00.0
书后题求助,谢谢!
   *
  ***
*****
*******
*****
  ***
   *
这个书后题我不会做,希望大家能给予帮助。谢谢大家
搜索更多相关的解决方案: 书后  

----------------解决方案--------------------------------------------------------
main(){for(int i=8,j=0;i>=-8;i-=2,j++)printf("%s%s\n","    "+(j<4?j%4:8-j),"*******"+abs(i));}
----------------解决方案--------------------------------------------------------

楼上虽简单,但有个明显的错误,就是没有定义i,j。

正确如下:main() { int i,j; for( i=8,j=0;i>=-8;i-=2,j++) printf("%s%s\n"," "+(j<4?j%4:8-j),"*******"+abs(i)); }


----------------解决方案--------------------------------------------------------
语法格式不是问题,关键是实质,vc可以编译
----------------解决方案--------------------------------------------------------
printf("%s%s\n","    "+(j&lt;4?j%4:8-j),"*******"+abs(i));当中“j%4”是多余的,应简为j就行了。如:printf("%s%s\n","    "+(j&lt;4?j:8-j),"*******"+abs(i));另能否帮解释这一行具体过程吗。
----------------解决方案--------------------------------------------------------

对初学来说,用普通的方式如下:

main() { int i,j,k; for(i=0;i<4;i++) { for(j=0;j<=2-i;j++) printf(" "); for(k=0;k<=2*i;k++) printf("*"); printf("\n"); } for(i=0;i<3;i++) { for(j=0;j<=i;j++) printf(" "); for(k=0;k<=4-2*i;k++) printf("*"); printf("\n"); } getch(); }


----------------解决方案--------------------------------------------------------
  相关解决方案