请教高手怎么用数组绘制菱形
谢谢
----------------解决方案--------------------------------------------------------
#include<stdio.h>
main()
{
int i,j,k;
for(i=0;i<=5;i++)
{
for(j=2;j>=i-2;j--)
printf(" ");
for(k=-2;k<=i*2-2;k++)
printf("*");
printf("\n");
}
for(i=4;i>=0;i--)
{
for(k=i+1;k<=5;k++)
printf(" ");
for(j=i*2+1;j>=1;j--)
printf("*");
printf("\n");
}
printf("\n");
}
----------------解决方案--------------------------------------------------------
回复 1# 的帖子
怎么用数组绘制?能否表述得更加详细确切些? ----------------解决方案--------------------------------------------------------
难道用2唯数组写?? 那不就定义死了
----------------解决方案--------------------------------------------------------
说明白一点啊,楼上的 ! ! !
----------------解决方案--------------------------------------------------------
#include <stdio.h>
int main(void)
{
int i,j;
char linxing[5][5]={{' ',' ','*'}, {' ','*',' ','*'},{'*',' ',' ',' ','*'},{' ','*',' ','*'},{' ',' ','*'};
for(i=0;i<5;i++)
for(j=0;j<5;j++)
{
printf("%d",linxing[i][j]);
printf("\n");
}
return 0;
}
应该是对的,只要是学习掌握二维数组的定义。
----------------解决方案--------------------------------------------------------
#include <stdio.h>
int main(void)
{
int i,j;
char linxing[5][5]={{' ',' ','*'}, {' ','*',' ','*'},{'*',' ',' ',' ','*'},{' ','*',' ','*'},{' ',' ','*'}};
clrscr();
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
printf("%c",linxing[i][j]);
printf("\n");
}
getch();
return 0;
}
修改一下,运行通过。
----------------解决方案--------------------------------------------------------
用数组不如用1楼的灵活啊!
----------------解决方案--------------------------------------------------------
RE
main(){int i,j,t;
for(i=1;i<=7;i++)
{if(i<=4)t=i;
else t=8-i;
for(j=1;j<=8-t;j++)
printf(" ");
for(j=1;j<2*t-1;j++)
printf("*");
printf("\n");
}}
----------------解决方案--------------------------------------------------------
大家的思路都很好啊,好象有些看不很懂还!
----------------解决方案--------------------------------------------------------