当前位置: 代码迷 >> C语言 >> [休闲]我终天会打印空心三角形了
  详细解决方案

[休闲]我终天会打印空心三角形了

热度:361   发布时间:2006-09-06 16:14:16.0
[休闲]我终天会打印空心三角形了
#include "stdio.h"
#define N 4
void main()
{ int i,j;
clrscr();
for(i=0;i<5;i++)
{
for(j=0;j<9;j++)
{ if (i!=4)
if (j==N+i || j==N-i)
putchar('*');
else
putchar(' ');
else
putchar('*');
}
puts("");
}
getch();
}
搜索更多相关的解决方案: 三角形  打印  空心  putchar  else  

----------------解决方案--------------------------------------------------------
恭喜了

----------------解决方案--------------------------------------------------------
以下是引用走火在2006-9-6 16:14:16的发言:
#include "stdio.h"
#define N 4
void main()
{ int i,j;
clrscr();
for(i=0;i<N+1;i++)
{
for(j=0;j<2*N+1;j++)
{ if (i!=N)
if (j==N+i || j==N-i)
putchar('*');
else
putchar(' ');
else
putchar('*');
}
puts("");
}
getch();
}

呵呵,还有点小问题.
----------------解决方案--------------------------------------------------------
谢谢楼上
呵呵
----------------解决方案--------------------------------------------------------

其实这样的程序只要printf就足够了。


----------------解决方案--------------------------------------------------------
比printf快吧
----------------解决方案--------------------------------------------------------

呵呵,恭喜楼主了!说明你的学习已经不如正规了!继续努力ing!


----------------解决方案--------------------------------------------------------

因为不明白楼主那么简单的算法,只好自己找规律,写了一个笨一点的方法,呵呵

#include<stdio.h>
int main()
{
char str[6][11];int i,m,k,j;
for(i=0;i<6;i++)
{
for(j=0;j<11;j++)
str[i][j]=' ';
}
for(i=0;i<11;i++)
str[5][i]='*';
m=10;k=0;
while(m>=k)
{
if((m+k)/2==5)
{
str[(m-k)/2][m]='*';
str[(m-k)/2][k]='*';
}
m--;k++;
}
for(i=0;i<6;i++)
{
for(j=0;j<11;j++)
printf("%c",str[i][j]);
printf("\n");
}
return(0);
}


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