我是这样编的,请问怎样编多“*”的钻石图形

来源:百度知道 编辑:UC知道 时间:2024/06/07 05:48:45
*
***
*****
***
* 要求用C打印出左边的图形,我是一个C初学者
我是这样写的:
main()
{
char diamond[][5]={{'','','*'},{'','*','*','*'},{'*','*','*','*','*'},{'','*','*','*'},{'','','*'};
int i,j;
for(i=0;i<5;i++)
{for(j=0;j<5;j++)
printf("%c",diamond);
printf("\n");}
}
我想知道当星星很多的时候,怎么用简便的方法输出,而不是罗列这么麻烦,谢谢!!!
我需要的是打印出实心的菱形
而且比方说星星很多,怎么编方便些

#include <stdio.h>

void main()
{
int i,j,k;

for(i=1;i<=10;i++)
{
for(j=10-i;j>=1;j--)
{
printf(" ");
}

for(k=1;k<=2*i-1;k++)
{
if(k==1 || k==2*i-1)
{
printf("*");
}
else
{
printf(" ");
}
}
printf("\n");
}

for(i=10-1;i>=1;i--)
{
for(j=10-i;j>=1;j--)
{
printf(" ");
}

for(k=1;k<=2*i-1;k++)
{
printf("*");
}
printf("\n");
}
}

这是一个空心的菱形

*********
*******
*****
***
*

main()
{
int i,j,m;
for(m=5;m>=0;m--)
{
for(i=9;i>=1;i--
{
for (j=0;j<=4;j++)
{printf(" ");}
printf("*");}
printf(&