编写一个C程序,使用for循环打印W星形图案。在此代码中,printingStars函数进行迭代并打印星号,printingSpaces函数打印空格以形成W形状。
#include <stdio.h>
void printingStars(int rows)
{
for (int i = 0; i < rows; ++i)
{
printf("*");
}
}
void printingSpaces(int rows)
{
for (int i = 0; i < rows; ++i)
{
printf(" ");
}
}
int main()
{
int rows;
printf("Enter W Shape Star Pattern Rows = ");
scanf("%d", &rows);
printf("Printing W Shape Pattern\n");
for (int i = 0; i < rows; i++)
{
printingStars(i + 1);
printingSpaces(rows - i - 1);
printingStars(rows - i + 1);
printingSpaces(2 * i);
printingStars(rows - i);
printingSpaces(rows - i - 1);
printingStars(i + 1);
printf("\n");
}
}

此程序使用while循环显示W星形图案。
#include <stdio.h>
void printingStars(int rows)
{
int i = 0;
while (i < rows)
{
printf("*");
++i;
}
}
void printingSpaces(int rows)
{
int i = 0;
while (i < rows)
{
printf(" ");
++i;
}
}
int main()
{
int rows;
printf("Enter W Shape Star Pattern Rows = ");
scanf("%d", &rows);
printf("\n");
int i = 0;
while (i < rows)
{
printingStars(i + 1);
printingSpaces(rows - i - 1);
printingStars(rows - i + 1);
printingSpaces(2 * i);
printingStars(rows - i);
printingSpaces(rows - i - 1);
printingStars(i + 1);
printf("\n");
i++;
}
}
Enter W Shape Star Pattern Rows = 12
* ************************* *
** ************ *********** **
*** *********** ********** ***
**** ********** ********* ****
***** ********* ******** *****
****** ******** ******* ******
******* ******* ****** *******
******** ****** ***** ********
********* ***** **** *********
********** **** *** **********
*********** *** ** ***********
************** *************
在此示例中,WStars函数允许输入任何字符,并打印给定字符的W图案。
#include <stdio.h>
void printingWStars(int rows, char ch)
{
for (int i = 0; i < rows; ++i)
{
printf("%c", ch);
}
}
void printingWSpaces(int rows)
{
for (int i = 0; i < rows; ++i)
{
printf(" ");
}
}
int main()
{
int rows;
char ch;
printf("Enter Character = ");
scanf("%c", &ch);
printf("Enter Rows = ");
scanf("%d", &rows);
printf("\n");
for (int i = 0; i < rows; i++)
{
printingWStars(i + 1, ch);
printingWSpaces(rows - i - 1);
printingWStars(rows - i + 1, ch);
printingWSpaces(2 * i);
printingWStars(rows - i, ch);
printingWSpaces(rows - i - 1);
printingWStars(i + 1, ch);
printf("\n");
}
}
Enter Character = @
Enter Rows = 16
@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @
@@ @@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@ @@
@@@ @@@@@@@@@@@@@@@ @@@@@@@@@@@@@@ @@@
@@@@ @@@@@@@@@@@@@@ @@@@@@@@@@@@@ @@@@
@@@@@ @@@@@@@@@@@@@ @@@@@@@@@@@@ @@@@@
@@@@@@ @@@@@@@@@@@@ @@@@@@@@@@@ @@@@@@
@@@@@@@ @@@@@@@@@@@ @@@@@@@@@@ @@@@@@@
@@@@@@@@ @@@@@@@@@@ @@@@@@@@@ @@@@@@@@
@@@@@@@@@ @@@@@@@@@ @@@@@@@@ @@@@@@@@@
@@@@@@@@@@ @@@@@@@@ @@@@@@@ @@@@@@@@@@
@@@@@@@@@@@ @@@@@@@ @@@@@@ @@@@@@@@@@@
@@@@@@@@@@@@ @@@@@@ @@@@@ @@@@@@@@@@@@
@@@@@@@@@@@@@ @@@@@ @@@@ @@@@@@@@@@@@@
@@@@@@@@@@@@@@ @@@@ @@@ @@@@@@@@@@@@@@
@@@@@@@@@@@@@@@ @@@ @@ @@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@