1、首先,输入预处理指令#include <stdio.h>与函数原型void print(int n)。其中,n表示行数。
2、然后,对输入的n进行提前判断,若小于0或为偶数,则结束打印。
3、接着对上半个菱形进行输出(包括最长的行)。使用两层循环进行输出,分别控制行数与行内的位置。
4、接着对下半个菱形进行输出(包括最长的行)。也使用两层循环进行输出,分别控制行数与行内的位置。
5、对n=5与n=7进行输出测试。
6、得到最后结果。
#include<stdio.h>#include<stdlib.h>
int main()
{int i,j,n
scanf("%d",&n)
for(i=-ni<=ni++)
{for(j=-nj<=nj++)
printf("%c",abs(i)+abs(j)==n?'*':' ')
printf("\n")
}
return 0
}
这是你要的图形:#include<stdio.h>
int main()
{ int a=0,b=0,c=0
for(a=1a<=4a++)
{ for(b=1b<=5-ab++) printf(" ")
for(c=1c<=2*a-1c++)
{ if(c==1||c==2*a-1) printf("*")
else printf(" ")
}
printf("\n")
}
for(a=1a<=3a++)
{ for(b=1b<=a+1b++) printf(" ")
for(c=1c<=7-2*ac++)
{ if(c==1||c==7-2*a)printf("*")
else printf(" ")
}
printf("\n")
}
getch()
return 0
}
这是输入行数画出图形。
#include<stdio.h>
int main()
{ int a=0,b=0,c=0,d=0
scanf("%d",&d)
for(a=1a<=d/2+1a++)
{ for(b=1b<=d/2+2-ab++) printf(" ")
for(c=1c<=2*a-1c++)
{ if(c==1||c==2*a-1) printf("*")
else printf(" ")
}
printf("\n")
}
a=0,b=0,c=0
for(a=1a<=d/2a++)
{ for(b=1b<=a+1b++) printf(" ")
for(c=1c<=d-2*ac++)
{ if(c==1||c==d-2*a)printf("*")
else printf(" ")
}
printf("\n")
}
getch()
return 0
}