如何用C语言输出一下图案?

Python017

如何用C语言输出一下图案?,第1张

#include<stdio.h>

int main()

{ int i,n

scanf("%d",&n)

for(i=1i<ni++)

  printf("%*d%*d\n",2*i,i,4*(n-i),i)

printf("%*d\n",2*i,i)

return 0

}

输出菱形?我知道你说的那图形

对于这种输出图可以先分析

行数 空格(符号之前的) 字符

1--------- 3----------- 1

2--------- 2----------- 3

3--------- 1----------- 5

4--------- 0----------- 7

5--------- 1----------- 5

6--------- 2----------- 3

7--------- 3----------- 1

把图形从第四行分开分成上下两半,上半部分字符2i+1(i为行数-1),空格从3--0递减;下半部分将第5行看作第一行,字符5-2i(i为行数-1),空格等于行数1--3递加

程序:

#include<stdio.h>

int main()

{

//---------上半部分-----------

for(int i=0i<4i++)

{

for(int j=ij<3j++)//控制空格输出个数

printf(" ")//输出空格

for(int k=0k<2i+1k++)//控制字符输出个数

printf(" * ")//输出字符

printf("\n")

}

//--------下半部分------------

for(i=0i<3i++)//下半部分只有3行定义i<3

{

for(int j=0j<i+1j++)

printf(" ")

for(int k=0k<5-2ik++)

printf(" * ")

printf("\n")

}

retutn 0

}