书后题求助,谢谢!
****
*****
*******
*****
***
*
这个书后题我不会做,希望大家能给予帮助。谢谢大家
搜索更多相关的解决方案:
书后
----------------解决方案--------------------------------------------------------
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<4?j%4:8-j),"*******"+abs(i));当中“j%4”是多余的,应简为j就行了。如:printf("%s%s\n"," "+(j<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(); }
----------------解决方案--------------------------------------------------------