c语言编菱形 第一行一个*第二行3个*第三行5个*第四行三个*第五行一个*

i代表行.j代表*个数.k代表回车个数.

#include <stdio.h>
#include <math.h>
void main()
{
 int i,j,n,k;
 scanf("%d",&n);//输入3即可
 n=n+n+1;
 for(i=1;i<=n-2;i++)
 {
  for(j=1;j<=abs(n/2-i);j++)
   printf(" ");
  for(k=1;k<=n-2-2*abs(n/2-i);k++)
   printf("*");
  printf("\n");
 }
}//望采纳

追问

可以有不带n得方法么?只有i.j.k

追答

把scanf那行和后面一行换成
n=3;就可以了

后面一行不用换

智商都被拉低了

以后不能回答这种题目了

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-05-20
#include <stdio.h>
void main()
{
int i,j,k;
for(i=1;i<=3;i++)
{
for(j=1;j<=3-i;j++)
{
printf(" ");
}
for(k=1;k<=2*i-1;k++)
{
printf("*");
}
printf("\n");
}
for(i=2;i>=1;i--)
{
for(j=1;j<=3-i;j++)
{
printf(" ");
}
for(k=1;k<=2*i-1;k++)
{
printf("*");
}
printf("\n");
}
}本回答被网友采纳
相似回答