今天看到书上有一节讲用 “ * ” 打印简单的图形,平行四面形,三角形之类,
有一习题,是如何打印棱形,
我动动脑,虽然能够解决问题,但是觉得太麻烦了,不知道哪位兄弟有简单的算法能解决这个问题,
先谢过了,过一阵,我把我自己想到的贴出来。 ~!~~~~~~
今天看到书上有一节讲用 “ * ” 打印简单的图形,平行四面形,三角形之类,
有一习题,是如何打印棱形,
我动动脑,虽然能够解决问题,但是觉得太麻烦了,不知道哪位兄弟有简单的算法能解决这个问题,
先谢过了,过一阵,我把我自己想到的贴出来。 ~!~~~~~~
这是我写的 打印菱形 图形 请各位高手指点
main() {int i,j,n,f; scanf("%d",&f); for(i=0;i<f;i++) { for(j=0;j<f-i;j++) printf(" "); for(n=0;n<2*i+1;n++) printf("*"); printf("\n"); } for(i=0;i<f-1;i++) { for(j=0;j<=i+1;j++) printf(" "); for(n=0;n<((f*2-i)-(3+i));n++) printf("*"); printf("\n"); } }
这是我写的:
void main() {int row,col,c; /*row控制行,col控制每行前的空隔,c控制*的个数 for(row=1;row<+9;row++) {if (row<+5) { for(col=1;col<5-row;col++) printf(" "); /*打印一个空隔 for(c=1;c<=2*row-1;c++) printf("\n"); /*打印一个‘*’ } else { for(col=1;col<=row-5;col++) printf(" "); for(c=1;c<=(4-(row-5))*2+1;c++) /*这一步很关键, 这个公式我也是搞了好久才搞出来的。*/ printf("*"); printf("\n"); } } }
楼上的:
你的第一行:#include N5
是什么意思????
晕,2004,戴上眼镜看清楚点~是define
main() { printf(" *\n"); printf(" *** printf(" *****\n"); printf(" *******\n"); printf(" *****\n"); printf(" ***\n"); printf(" *\n"); }
这个是我编的,怎么样,不错吧`啊~不要,不要啊!!!(N个拳头飞过来)
[此贴子已经被作者于2004-07-29 15:41:40编辑过]