在本文中,我们将展示如何使用 for 循环、while 循环和函数来编写一个 C 语言程序,以打印字母 R 的图案或星形形状。
#include <stdio.h>
int main()
{
int rows;
printf("Enter Rows = ");
scanf("%d", &rows);
for (int i = 0; i < rows; i++)
{
for (int j = 0; j < rows; j++)
{
if ((i == 0 || i == rows / 2) && (0 < j < rows - 1))
{
printf("*");
}
else if ((i != 0) && (j == 0 || (j == rows - 1 && i < rows / 2 )))
{
printf("*");
}
else if(j == i && i >= rows / 2)
{
printf("*");
}
else
{
printf(" ");
}
}
printf("\n");
}
return 0;
}
Enter Rows = 16
**********
* *
* *
* *
* *
* *
* *
* *
**********
* *
* *
* *
* *
* *
* *
* *
这个字母 R 图案的星形程序没有使用 for 循环,而是使用了 while 循环 来迭代行和列。有关更多星形图案程序,请点击此处。
#include <stdio.h>
int main()
{
int i, j, rows;
printf("Enter Rows = ");
scanf("%d", &rows);
i = 0;
while ( i < rows)
{
j = 0;
while ( j < rows)
{
if (i == 0 && (0 < j < rows - 1))
{
printf("*");
}
else if (i != 0 && j == 0)
{
printf("*");
}
else if (i == rows / 2 && j != rows - 1)
{
printf("*");
}
else if (i != 0 && j == rows - 1 && i < rows / 2)
{
printf("*");
}
else if(j == i && i >= rows / 2)
{
printf("*");
}
else
{
printf(" ");
}
j++;
}
printf("\n");
i++;
}
return 0;
}
Enter Rows = 17
***********
* *
* *
* *
* *
* *
* *
* *
***********
* *
* *
* *
* *
* *
* *
* *
* *
在这个 C 语言程序中,我们创建了一个 alphabetRPat 函数,该函数接受这些值并打印给定字符的字母 R 形状或图案。
#include <stdio.h>
void alphabetRPat(int rows, char a)
{
for (int i = 0; i < rows; i++)
{
for (int j = 0; j < rows; j++)
{
if ((i == 0 || i == rows / 2) && (0 < j < rows - 1))
{
printf("%c", a);
}
else if ((i != 0) && (j == 0 || (j == rows - 1 && i < rows / 2 )))
{
printf("%c", a);
}
else if(j == i && i >= rows / 2)
{
printf("%c", a);
}
else
{
printf(" ");
}
}
printf("\n");
}
}
int main() {
int rows;
char a;
printf("Enter Alphabet = ");
scanf("%c", &a);
printf("Enter Rows = ");
scanf("%d", &rows);
alphabetRPat(rows, a);
return 0;
}
