主题:怎么用最少的语句实现下面图形呢?
小春哥哥
[专家分:0] 发布于 2007-05-03 02:20:00
怎么用最少的语句实现下面图形呢?
*
***
*****
*******
*****
***
*
回复列表 (共8个回复)
沙发
joinykg [专家分:30] 发布于 2007-05-04 14:02:00
#include <stdio.h>
void main ()
{
int i,j;
for (i=1;i<5;i++)
{
for (j=3;j>i-1;j--)
printf(" ");
for (j=1;j<2*i;j++)
printf ("*");
printf("\n");
}
for (i=1;i<4;i++)
{
for (j=0;j<i;j++)
printf(" ");
for (j=1;j<=7-2*i;j++)
printf("*");
printf("\n");
}
}
板凳
peng_yang [专家分:0] 发布于 2007-05-05 21:45:00
#include <stdio.h>
void main()
{
int i,j;
for (i=1;i<=4;i++)
{
for (j=1;j<=7;j++)
{
if (j+i<=4||j-i>=4)
printf(" ");
else printf("*");
}
printf("\n");
}
for (i=3;i>=1;i--)
{
for (j=1;j<=7;j++)
{
if (j+i<=4||j-i>=4)
printf(" ");
else printf("*");
}
printf("\n");
}
}
3 楼
田野 [专家分:320] 发布于 2007-05-06 11:33:00
最好的办法当然是直接画而不用什么循环了
4 楼
workhow [专家分:810] 发布于 2007-05-07 21:32:00
支持田野的思路.
5 楼
cmdl [专家分:1910] 发布于 2007-05-10 11:40:00
printf(" * \n *** \n ***** \n*******\n ***** \n *** \n * \n");
6 楼
菜鸟aaa [专家分:30] 发布于 2007-05-10 22:52:00
#include <stdio.h>
#include <math.h>
#define N 5 /* N为阶数,可以改为其他正整数 */
int main()
{
int i,j;
for(i=1;i<N*2;printf("\n"),i++)
for(j=1;j<N*2;putchar(N-abs(i-N)<=abs(j++-N)?' ':'*'));
return 0;
}
7 楼
MGTS [专家分:0] 发布于 2007-05-12 20:14:00
用数组呢?
8 楼
万里长城 [专家分:340] 发布于 2007-05-13 11:26:00
最懒的方法:
program ss;
begin
writeln(' *');
writeln(' ***');
writeln(' *****');
writeln('*******');
writeln(' *****');
writeln(' ***');
writeln(' *');
emd.
我来回复