C 语言打印字母 A 星形图案程序

编写一个 C 程序,使用 for 循环、while 循环和函数来打印星形的字母 A 图案,并附带示例。下面的程序使用嵌套的 for 循环来迭代行和列。if else 条件用于检查顶部、外部边缘和中间线以打印星号。

#include<stdio.h>
 
int main(void)
{
    int i, j, rows;
    printf("Enter Rows to Print A =  ");
    scanf("%d", &rows);
    
    for (int i = 0 ; i < rows; i++ )
    {
        for (int j = 0 ; j <= rows/2; j++ )
        {
            if ((i == 0 && j != 0 && j != rows/2) || i == rows / 2)
                printf("*");
            else if ((j == 0 || j == rows / 2) && i != 0)
                printf("*");
            else
                printf(" ");
        }
        printf("\n");
    }
}
C Program to Print Alphabet A Star Pattern

C 语言使用 while 循环打印字母 A 星形图案的程序

在此 程序 中,我们将 for 循环 替换为 while 循环,还将 Else if 语句 替换为 If else 语句,以打印星形的字母 A 图案。

#include<stdio.h>
 
int main(void)
{
    int rows;
    printf("Enter Rows to Print A =  ");
    scanf("%d", &rows);
    
    int i = 0 ;
    while (i < rows)
    {
        int j = 0 ;
        while (j <= rows/2 )
        {
            if (((i == 0 && j != 0 && j != rows/2) || i == rows / 2)
                || ((j == 0 || j == rows / 2) && i != 0))
                printf("*");
            else
                printf(" ");
            j++;
        }
        printf("\n");
        i++;
    }
}

输出

Enter Rows to Print A =  7
 ** 
*  *
*  *
****
*  *
*  *
*  *

此示例使用 do while 循环 并打印字母 A 星形图案。

#include<stdio.h>
 
int main(void)
{
    int rows;
    printf("Enter Rows to Print A =  ");
    scanf("%d", &rows);
    
    int i = 0 ;
    do
    {
        int j = 0 ;
        do
        {
            if (((i == 0 && j != 0 && j != rows/2) || i == rows / 2)
                || ((j == 0 || j == rows / 2) && i != 0))
                printf("*");
            else
                printf(" ");
            j++;
        } while (j <= rows/2 );
        printf("\n");
        i++;
    } while (i < rows);
}

输出

Enter Rows to Print A =  11
 **** 
*    *
*    *
*    *
*    *
******
*    *
*    *
*    *
*    *
*    *

在下面的程序中,我们创建了一个 函数 来包含 for 循环逻辑,它接受行数和任何字符,并使用该符号打印星形的字母 A 图案。

#include<stdio.h>
void loopLogic(int rows, char ch)
{
    for (int i = 0 ; i < rows; i++ )
    {
        for (int j = 0 ; j <= rows/2; j++ )
        {
            if (((i == 0 && j != 0 && j != rows/2) || i == rows / 2)
                || ((j == 0 || j == rows / 2) && i != 0))
                printf("%c", ch);
            else
                printf(" ");
        }
        printf("\n");
    }
}
int main(void)
{
    int rows;
    char ch;
    
    printf("Enter Character = ");
    scanf("%c", &ch);
    
    printf("Enter Rows to Print A =  ");
    scanf("%d", &rows);
    
    loopLogic(rows, ch);
}

输出

Enter Character = $
Enter Rows to Print A =  14
 $$$$$$ 
$      $
$      $
$      $
$      $
$      $
$      $
$$$$$$$$
$      $
$      $
$      $
$      $
$      $
$      $