int main()
{
int A=3;
scanf("%d",&A)
int i,j,x,a,b,c,d,e,f,g
for(i=1i<=A+1i++)
{
for(x=Ax>=ix--)
{
printf(" ")
}
for(a=1a<=ia++)
{
printf("*")
}
for(b=0b<=i-2b++)
{
printf("*")
}
for(c=Ac>=ic--)
{
printf(" ")
}
printf("\n");
}
for(j=1j<=Aj++)
{
for(d=1d<=jd++)
{
printf(" ")
}
for(e=Ae>=je--)
{
printf("*")
}
for(f=A-1f>=jf--)
{
printf("*")
}
for(g=0g<=j-1g++)
{
printf(" ")
}
printf("\n")
}
return 0
}
要打出图片题目中所示菱形,只需run下程序,输入3即可(即input A=3)。代码中的那个A可以理解为菱形的横对角线的*的数量减1后的一半。以上代码适合初学者,因为我也是个初学者,对于C语言高手来说,我这个复杂了,我的思路是四个小三角形拼出一个菱形的。。。你run下看可不可以?然后由于这个答案输出框的条件限制,输出的格式,如空格换行等那些会没显示到
#include <stdio.h>
int main()
{
int n,i,j
scanf("%d",&n)
for(i=0i<=ni++)//上半部分
{
for(j=1j<=n-ij++)//每行前边空格
putchar(' ')
for(j=1j<=2*i+1j++)//每行输出的#
putchar('#')
putchar('\n')
}
for(i=1i<=ni++)//下半部分
{
for(j=1j<=ij++)
putchar(' ')
for(j=2*(n-i)+1j>0j--)
putchar('#')
putchar('\n')
}
return 0
}