打印H星图案的C语言程序

106 阅读1分钟

编写一个C语言程序,使用for循环打印H星图案。

#include <stdio.h>

int main() { int rows, i, j, k, l;

printf("Please Enter H Pattern Rows = ");
scanf("%d", &rows);

printf("Printing H Star Pattern\\n");

for (i = 1; i <= rows; i++)
{
	for (j = 1; j <= i; j++)
	{
		printf("\*");
	}
	for (k = i \* 2; k <= rows \* 2 - 1; k++)
	{
		printf(" ");
	}
	for (l = 1; l <= i; l++)
	{
		printf("\*");
	}
	printf("\\n");
}

for (i = 1; i <= rows - 1; i++)
{
	for (j = rows - 1; j >= i; j--)
	{
		printf("\*");
	}
	for (k = 1; k <= i \* 2; k++)
	{
		printf(" ");
	}
	for (l = rows - 1; l >= i; l--)
	{
		printf("\*");
	}
	printf("\\n");
}

image.png

在这个C语言例子中,我们用while循环来打印H星图案。

#include <stdio.h>.

int main() { int rows, i, j, k, l;

printf("Please Enter H Pattern Rows = ");
scanf("%d", &rows);

printf("Printing H Star Pattern\\n");
i = 1;
while (i <= rows)
{
	j = 1;
	while (j <= i)
	{
		printf("\*");
		j++;
	}
	k = i \* 2;
	while (k <= rows \* 2 - 1)
	{
		printf(" ");
		k++;
	}
	l = 1;
	while (l <= i)
	{
		printf("\*");
		l++;
	}
	printf("\\n");
	i++;
}

i = 1;
while (i <= rows - 1)
{
	j = rows - 1;
	while (j >= i)
	{
		printf("\*");
		j--;
	}
	k = 1;
	while (k <= i \* 2)
	{
		printf(" ");
		k++;
	}
	l = rows - 1;
	while (l >= i)
	{
		printf("\*");
		l--;
	}
	printf("\\n");
	i++;
}
Please Enter H Pattern Rows = 11
Printing H Star Pattern
*                    *
**                  **
***                ***
****              ****
*****            *****
******          ******
*******        *******
********      ********
*********    *********
**********  **********
**********************
**********  **********
*********    *********
********      ********
*******        *******
******          ******
*****            *****
****              ****
***                ***
**                  **
*                    *

使用do while循环打印H星图案的C程序

#include <stdio.h>

int main() { int rows, i, j, k, l;

printf("Please Enter H Pattern Rows = ");
scanf("%d", &rows);

printf("Printing H Star Pattern\\n");
i = 1;
do
{
	j = 1;
	do
	{
		printf("\*");
	} while (++j <= i);
	k = i \* 2;
	while (k <= rows \* 2 - 1)
	{
		printf(" ");
		k++;
	}
	l = 1;
	do
	{
		printf("\*");
	} while (++l <= i);
	printf("\\n");
} while (++i <= rows);

i = 1;
do
{
	j = rows - 1;
	do
	{
		printf("\*");
	} while (--j >= i);
	k = 1;
	do
	{
		printf(" ");
	} while (++k <= i \* 2);
	l = rows - 1;
	do
	{
		printf("\*");
	} while (--l >= i);
	printf("\\n");
} while (++i <= rows - 1);
Please Enter H Pattern Rows = 13
Printing H Star Pattern
*                        *
**                      **
***                    ***
****                  ****
*****                *****
******              ******
*******            *******
********          ********
*********        *********
**********      **********
***********    ***********
************  ************
**************************
************  ************
***********    ***********
**********      **********
*********        *********
********          ********
*******            *******
******              ******
*****                *****
****                  ****
***                    ***
**                      **
*                        *

在这里,我们创建了HPattern函数,运行重复的for循环。这个C程序允许用户输入字符,并使用该函数打印给定字符的H模式。

#include <stdio.h>

void HPattern(int rows, char ch);

int main() { int rows; char ch;

printf("Enter Character for H Pattern = ");
scanf("%c", &ch);

printf("Please Enter H Pattern Rows = ");
scanf("%d", &rows);

printf("Printing H Pattern\\n");
HPattern(rows, ch);

void HPattern(int rows, char ch) { int i, j, k, l;


for (i = 1; i <= rows; i++)
{
	for (j = 1; j <= i; j++)
	{
		printf("%c", ch);
	}
	for (k = i \* 2; k <= rows \* 2 - 1; k++)
	{
		printf(" ");
	}
	for (l = 1; l <= i; l++)
	{
		printf("%c", ch);
	}
	printf("\\n");
}

for (i = 1; i <= rows - 1; i++)
{
	for (j = rows - 1; j >= i; j--)
	{
		printf("%c", ch);
	}
	for (k = 1; k <= i \* 2; k++)
	{
		printf(" ");
	}
	for (l = rows - 1; l >= i; l--)
	{
		printf("%c", ch);
	}
	printf("\\n");
}
Enter Character for H Pattern = $
Please Enter H Pattern Rows = 14
Printing H Pattern
$                          $
$$                        $$
$$$                      $$$
$$$$                    $$$$
$$$$$                  $$$$$
$$$$$$                $$$$$$
$$$$$$$              $$$$$$$
$$$$$$$$            $$$$$$$$
$$$$$$$$$          $$$$$$$$$
$$$$$$$$$$        $$$$$$$$$$
$$$$$$$$$$$      $$$$$$$$$$$
$$$$$$$$$$$$    $$$$$$$$$$$$
$$$$$$$$$$$$$  $$$$$$$$$$$$$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$$$$$$  $$$$$$$$$$$$$
$$$$$$$$$$$$    $$$$$$$$$$$$
$$$$$$$$$$$      $$$$$$$$$$$
$$$$$$$$$$        $$$$$$$$$$
$$$$$$$$$          $$$$$$$$$
$$$$$$$$            $$$$$$$$
$$$$$$$              $$$$$$$
$$$$$$                $$$$$$
$$$$$                  $$$$$
$$$$                    $$$$
$$$                      $$$
$$                        $$
$                          $