编写一个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");
}
在这个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
$ $
$$ $$
$$$ $$$
$$$$ $$$$
$$$$$ $$$$$
$$$$$$ $$$$$$
$$$$$$$ $$$$$$$
$$$$$$$$ $$$$$$$$
$$$$$$$$$ $$$$$$$$$
$$$$$$$$$$ $$$$$$$$$$
$$$$$$$$$$$ $$$$$$$$$$$
$$$$$$$$$$$$ $$$$$$$$$$$$
$$$$$$$$$$$$$ $$$$$$$$$$$$$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$$$$$$ $$$$$$$$$$$$$
$$$$$$$$$$$$ $$$$$$$$$$$$
$$$$$$$$$$$ $$$$$$$$$$$
$$$$$$$$$$ $$$$$$$$$$
$$$$$$$$$ $$$$$$$$$
$$$$$$$$ $$$$$$$$
$$$$$$$ $$$$$$$
$$$$$$ $$$$$$
$$$$$ $$$$$
$$$$ $$$$
$$$ $$$
$$ $$
$ $