目录
用 C 语言绘制菱形图案:实现过程与代码解析
1. 背景介绍
在编程中,了解和掌握图案打印的方法是基本功之一。本文将讨论使用C语言编写的程序打印菱形图案,并详细分析其代码实现过程。
2. 题目:用C语言在屏幕上输出以下图案:
3. 菱形图案打印过程分析
在菱形图案打印中,需要考虑行数的变化,采用适当的循环结构控制菱形的行数和空格数。由图可见是由空格和*按照不同个数的输出组成的。
-
先输入行数n,则上半部分行数为n,下半部分行数为n-1
-
先打印上半部分:通过下图分析,上半部分先输出空格,后输出,每行中空格:从上往下,一行减少一个,而 * 则是:2 * i + 1的方式递增。
-
在打印下半部分:下半部分先输出空格,后输出*,每行中的空格:从上往下,每行多一个空格,而 * : 从上往下,按照2*(n-1-i)-1的方式减少,其中:n表示总共有多少行
-
按照上述方式,将上三角和下三角中的空格和*分别输出即可。
4. 具体代码实现
#include<stdio.h>
int main()
{
int n = 0;
int i = 0;
scanf("%d", &n);//7
//打印上半部分
for(i=0; i<n; i++)
{
//打印一行
//打印空格
int j = 0;
for(j=0; j<n-1-i; j++)
{
printf(" ");
}
//打印*
for(j=0; j<2*i+1; j++)
{
printf("*");
}
printf("\n");
}
//打印下半部分
for(i=0; i<n-1; i++)
{
//打印一行
int j = 0;
for(j=0; j<=i; j++)
{
printf(" ");
}
for(j=0; j<2*(n-1-i)-1; j++)
{
printf("*");
}
printf("\n");
}
return 0;
}