C 语言星型图案程序

本文介绍了 C 语言中的星型图案程序列表,并提供了使用 for 循环、while 循环、函数和 do while 循环的每个示例。

除了星型图案程序,您还可以使用 C 语言打印字母数字图案。在开始阅读本文之前,我建议您参考C 教程C 示例文章,以了解该语言和其他程序。

C 语言星型图案程序

以下是打印星型图案和形状的程序列表。

C 语言打印菱形星型图案

下面的示例使用嵌套的 for 循环来迭代行并打印菱形星型图案。在此部分中,我们将向您展示不同种类的菱形图案。更多示例请点击>> 此处

#include<stdio.h>

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

int main(void)
{
    int i, rows;
    
    printf("Enter Diamond Rows =  ");
    scanf("%d", &rows);
    
    for(i = 1; i <= rows; i++)
    {
        loopLogic(rows, i);
    }
    
    for(i = rows - 1; i > 0; i--)
    {
        loopLogic(rows, i);
    }
}

输出。

Enter Diamond Rows =  8
       *
      ***
     *****
    *******
   *********
  ***********
 *************
***************
 *************
  ***********
   *********
    *******
     *****
      ***
       *

半菱形星型图案

有关打印半菱形星型图案的更多示例,请点击>> 此处

#include<stdio.h>
void result(int r, int i)
{
    for (int j = 1; j <= i; j++) {
        printf("*");
    }
    printf("\n");
}
int main(void) {
    int i, r;
    
    printf("Enter Half Diamond Pattern Rows =  ");
    scanf("%d", &r);
    
    for (i = 1; i <= r; i++) {
        result(r, i);
    }
    for (i = r - 1; i > 0; i--) {
        result(r, i);
    }
}

输出

Enter Half Diamond Pattern Rows =  12
*
**
***
****
*****
******
*******
********
*********
**********
***********
************
***********
**********
*********
********
*******
******
*****
****
***
**
*

空心菱形星型图案

有关空心菱形星型图案的更多示例,请点击>> 此处

#include<stdio.h>
void result(int r, int i)
{
    for (int j = 1; j <= r - i; j++) {
        printf(" ");
    }
    for (int k = 1; k <= i * 2 - 1; k++) {
        if (k == 1 || k == i * 2 - 1) {
            printf("*");
        } else {
            printf(" ");
        }
    }
    printf("\n");
}
int main(void) {
    int i, r;
    
    printf("Enter Hollow Diamond Pattern Rows =  ");
    scanf("%d", &r);
    
    for (i = 1; i <= r; i++) {
        result(r, i);
    }
    for (i = r - 1; i > 0; i--) {
        result(r, i);
    }
}

输出

Enter Hollow Diamond Pattern Rows =  8
       *
      * *
     *   *
    *     *
   *       *
  *         *
 *           *
*             *
 *           *
  *         *
   *       *
    *     *
     *   *
      * *
       *

正方形中的空心菱形图案

有关打印正方形中的空心菱形图案星型图案的更多示例,请点击>> 此处

#include<stdio.h>
int main(void)
{
    int i, j, k, r;
    
    printf("Enter Hollow Diamond inside Square Rows =  ");
    scanf("%d", &r);
    
    for (i = 0 ; i < r; i++ )
    {
        for (j = 0 ; j < r; j++ )
        {
            if(j < r - i) {
                printf("*");
            }
            else {
                printf(" ");
            }
        }
        for (k = 0 ; k < r; k++ )
        {
            if (k < i ) {
                printf(" ");
            }
            else {
                printf("*");
            }
        }
        printf("\n");
    }
    
    for (i = 1 ; i <= r; i++ )
    {
        for (j = 0 ; j < r; j++ )
        {
            if(j < i) {
                printf("*");
            }
            else {
                printf(" ");
            }
        }
        for (k = 0 ; k < r; k++ )
        {
            if (k < r - i ) {
                printf(" ");
            }
            else {
                printf("*");
            }
        }
        printf("\n");
    }
}

输出

Enter Hollow Diamond inside Square Rows =  13
**************************
************  ************
***********    ***********
**********      **********
*********        *********
********          ********
*******            *******
******              ******
*****                *****
****                  ****
***                    ***
**                      **
*                        *
*                        *
**                      **
***                    ***
****                  ****
*****                *****
******              ******
*******            *******
********          ********
*********        *********
**********      **********
***********    ***********
************  ************
**************************

镜像半菱形星型图案

有关镜像半菱形星型图案的更多示例,请点击>> 此处

#include<stdio.h>
void result(int r, int i)
{
    for (int j = 1; j <= r - i; j++) {
        printf(" ");
    }
    for (int k = 1; k <= i; k++) {
        printf("*");
    }
    printf("\n");
}
int main(void) {
    int i, r;
    
    printf("Enter Mirrored Half Diamond Pattern Rows =  ");
    scanf("%d", &r);
    
    for (i = 1; i <= r; i++) {
        result(r, i);
    }
    for (i = r - 1; i > 0; i--) {
        result(r, i);
    }
}

输出

Enter Mirrored Half Diamond Pattern Rows =  11
          *
         **
        ***
       ****
      *****
     ******
    *******
   ********
  *********
 **********
***********
 **********
  *********
   ********
    *******
     ******
      *****
       ****
        ***
         **
          *

C 语言打印金字塔星型图案

程序使用嵌套的 for 循环结构打印金字塔星型图案。我建议您参考For 循环文章来理解逻辑。有关金字塔的更多示例,请点击>> 此处

#include <stdio.h>
 
int main(void)
{
    int rows, i, j, k;
    
    printf("Enter Pyramid Rows:  ");
    scanf("%d", &rows);
    
    for ( i = 1 ; i <= rows; i++ )
    {
        for ( j = 1 ; j <= rows-i; j++ )
        {
            printf(" ");
        }
        for (k = 1; k <= (2 * i - 1); k++)
        {
            printf("*");
        }
        printf("\n");
    }
}
Enter Pyramid Rows:  9
        *
       ***
      *****
     *******
    *********
   ***********
  *************
 ***************
*****************

倒金字塔星型图案

有关倒金字塔星型图案的更多示例,请点击>> 此处

#include<stdio.h>
int main(void)
{
    int rows;
      
    printf("Enter Inverted Pyramid Rows:  ");
    scanf("%d", &rows);
      
    for (int i = rows ; i >= 1; i-- )
      {
        for (int j = 0 ; j <= rows-i; j++ )
        {
            printf(" ");
        }
        for (int k = 0; k < (2 * i - 1); k++)
        {
            printf("*");
        }
        printf("\n");
      }
  }

输出

Enter Inverted Pyramid Rows:  9
 *****************
  ***************
   *************
    ***********
     *********
      *******
       *****
        ***
         *

空心金字塔星型图案

有关打印空心星型金字塔图案的更多 C 语言程序示例,请点击>> 此处

#include<stdio.h>
int main(void)
{
    int i, j, rows;
    printf("Enter Hollow Pyramid Star Rows =  ");
    
    scanf("%d", &rows);
    for(i = 1; i <= rows; i++)
    {
        for(j = 1; j <= rows - i; j++)
        {
            printf(" ");
        }
        if(i == 1 || i == rows)
        {
            for(j = 1; j <= i * 2 - 1; j++)
            {
                printf("*");
            }
        }
        else
        {
            for(j = 1; j <= i * 2 - 1; j++)
            {
                if(j == 1 || j == i * 2 - 1)
                {
                    printf("*");
                }
                else
                {
                    printf(" ");
                }
            }
        }
        printf("\n");
    }
}

输出

Enter Hollow Pyramid Star Rows =  13
            *
           * *
          *   *
         *     *
        *       *
       *         *
      *           *
     *             *
    *               *
   *                 *
  *                   *
 *                     *
*************************

空心倒金字塔星型图案

有关空心倒金字塔星型图案的更多示例,请点击>> 此处

#include<stdio.h>
int main(void)
{
    int i, j, rows;
    printf("Enter Hollow Inverted Pyramid Star Rows =  ");
    scanf("%d", &rows);
    
    for(i = rows; i > 0; i--)
    {
        for(j = 1; j <= rows - i; j++)
        {
            printf(" ");
        }
        
        if(i == 1 || i == rows)
        {
            for(j = 1; j <= i * 2 - 1; j++)
            {
                printf("*");
            }
        }
        else
        {
            for(j = 1; j <= i * 2 - 1; j++)
            {
                if(j == 1 || j == i * 2 - 1)
                {
                    printf("*");
                }
                else
                {
                    printf(" ");
                }
            }
        }
        printf("\n");
    }
}

输出

Enter Hollow Inverted Pyramid Star Rows =  12
***********************
 *                   *
  *                 *
   *               *
    *             *
     *           *
      *         *
       *       *
        *     *
         *   *
          * *
           *

C 语言打印直角三角形星型图案

有关直角三角形星型图案的更多信息,请点击>> 此处

#include<stdio.h>

int main(void)
{
    int n;
    printf("Enter Right Angled Triangle Rows =  ");
    scanf("%d", &n);
    
    for (int i = 1; i <= n; i++)
    {
        for (int j = 1; j <= i; j++)
        {
            printf("* ");
        }
        printf("\n");
    }
}

输出

Star Pattern Programs in C

空心直角三角形图案

有关空心直角三角形星型图案的更多示例,请点击>> 此处

#include<stdio.h>

int main(void)
{
    int n;
    
    printf("Enter Hollow Right Triangle Rows =  ");
    scanf("%d", &n);
    
    for(int i = 1; i <= n; i++)
    {
        for(int j = 1; j <= i; j++)
        {
            if(i == 1 || i == n || j == 1 || j == i)
                printf("* ");
            else
            {
                printf("  ");
            }
        }
        printf("\n");
    }
}

输出。

Enter Hollow Right Triangle Rows =  12
* 
* * 
*   * 
*     * 
*       * 
*         * 
*           * 
*             * 
*               * 
*                 * 
*                   * 
* * * * * * * * * * * *

镜像直角三角形图案

有关镜像直角三角形星型图案的更多示例,请点击>> 此处

#include<stdio.h>

int main(void)
{
    int n;
    
    printf("Enter the Number of Rows :  ");
    scanf("%d", &n);
    
    for (int i = 1 ; i <= n; i++ )
    {
        for (int j = 1 ; j <= n; j++ )
        {
            if(j <= n-i)
            {
                printf(" ");
            }
            else
            {
                printf("*");
            }
        }
        printf("\n");
    }
}

输出。

Enter the Number of Rows :  14
             *
            **
           ***
          ****
         *****
        ******
       *******
      ********
     *********
    **********
   ***********
  ************
 *************
**************

空心镜像直角三角形图案

有关空心镜像直角三角形星型图案的更多示例,请点击>> 此处

#include<stdio.h>

int main(void)
{
    int i, j, n;
    printf("Enter Hollow Mirrored Right Triangle Rows =  ");
    scanf("%d", &n);
    
    for(int i = 1; i <= n; i++)
    {
        for(j = 1; j <= n - i; j++)
        {
            printf(" ");
        }
        for(j = 1; j <= i; j++)
        {
            if(j == 1 || j == i || i == 1 || i == n)
                printf("*");
            else
                printf(" ");
        }
        printf("\n");
    }
}

输出。

Enter Hollow Mirrored Right Triangle Rows =  15
              *
             **
            * *
           *  *
          *   *
         *    *
        *     *
       *      *
      *       *
     *        *
    *         *
   *          *
  *           *
 *            *
***************

反向镜像直角三角形

有关反向镜像直角三角形星型图案的更多示例,请点击>> 此处

#include<stdio.h>

int main(void)
{
    int n;
    
    printf("Enter the Number of Rows =  ");
    scanf("%d", &n);
    
    for (int i = 1 ; i <= n; i++ )
    {
        for (int j = 1 ; j <= n; j++ )
        {
            if(j < i)
            {
                printf(" ");
            }
            else
            {
                printf("*");
            }
        }
        printf("\n");
    }
}

输出。

Enter the Number of Rows =  13
*************
 ************
  ***********
   **********
    *********
     ********
      *******
       ******
        *****
         ****
          ***
           **
            *

倒直角三角形

有关倒直角三角形星型图案的更多示例,请点击>> 此处

#include<stdio.h>

int main(void)
{
    int n;
    
    printf("Enter the Number of Rows =  ");
    scanf("%d", &n);
    
    for (int i = n ; i > 0 ; i-- )
      {
          for (int j = i ; j > 0 ; j-- )
          {
              printf("* ");
          }
          printf("\n");
      }
}

输出。

Enter the Number of Rows =  12
* * * * * * * * * * * * 
* * * * * * * * * * * 
* * * * * * * * * * 
* * * * * * * * * 
* * * * * * * * 
* * * * * * * 
* * * * * * 
* * * * * 
* * * * 
* * * 
* * 
* 

空心倒直角三角形图案

有关空心倒直角三角形星型图案的更多示例,请点击>> 此处

#include<stdio.h>

int main(void)
{
    int n;
    
    printf("Enter the Number of Rows =  ");
    scanf("%d", &n);
    
    for (int i = n ; i > 0 ; i-- )
    {
        for (int j = i ; j > 0 ; j-- )
        {
            if(i == 1 || i == n  || j == 1 || j == i)
            {
                printf("*");
            }
            else
            {
                printf(" ");
            }
        }
        printf("\n");
    }
}

输出。

Enter the Number of Rows =  16
****************
*             *
*            *
*           *
*          *
*         *
*        *
*       *
*      *
*     *
*    *
*   *
*  *
* *
**
*

倒镜像直角三角形

有关倒镜像直角三角形星型图案的更多示例,请点击>> 此处

#include<stdio.h>

int main(void)
{
    int i, j, n;
    printf("Enter Inverted Mirrored Right Triangle Rows =  ");
    scanf("%d", &n);
    
    for(i = n; i > 0; i--)
    {
        for(j = n - i; j > 0; j--)
        {
            printf(" ");
        }
        for(j = 0; j < i; j++)
        {
            printf("*");
        }
        printf("\n");
    }
}

输出。

Enter Inverted Mirrored Right Triangle Rows =  10
**********
 *********
  ********
   *******
    ******
     *****
      ****
       ***
        **
         *

空心倒镜像直角三角形

有关空心倒镜像直角三角形星型图案的更多示例,请点击>> 此处

#include<stdio.h>

int main(void)
{
    int i, j, n;
    printf("Enter Hollow Inverted Mirrored Right Triangle Rows =  ");
    scanf("%d", &n);
    
    for(i = n; i > 0; i--)
    {
        for(j = n - i; j > 0; j--)
        {
            printf(" ");
        }
        for(j = 1; j <= i; j++)
        {
            if(i == 1 || i == n || j == 1 || j == i)
            {
                printf("*");
            }
            else
            {
                printf(" ");
            }
        }
        printf("\n");
    }
}

输出。

Enter Hollow Inverted Mirrored Right Triangle Rows =  13
*************
 *          *
  *         *
   *        *
    *       *
     *      *
      *     *
       *    *
        *   *
         *  *
          * *
           **
            *

C 语言打印矩形星型图案

有关矩形星型图案的更多示例,请点击>> 此处

#include<stdio.h>

int main(void)
{
    int rows, columns;
    
    printf("Enter the Number of rows = ");
    scanf("%d", &rows);
    
    printf("Enter the Number of Columns = ");
    scanf("%d", &columns);
    
    for(int i = 0; i < rows; i++)
    {
        for(int j = 0; j < columns; j++)
        {
            printf("*");
        }
        printf("\n");
    }
}

输出。

Enter the Number of rows = 10
Enter the Number of Columns = 14
**************
**************
**************
**************
**************
**************
**************
**************
**************
**************

空心矩形星型图案

有关空心矩形星型图案的更多示例,请点击>> 此处

#include<stdio.h>

int main(void)
{
    int rows, columns;
    
    printf("Enter the Number of rows = ");
    scanf("%d", &rows);
    
    printf("Enter the Number of Columns = ");
    scanf("%d", &columns);
    
    for(int i = 0; i < rows; i++)
    {
        for(int j = 0; j < columns; j++)
        {
            if(i == 0 || i == rows-1 || j == 0 || j == columns-1)
            {
                printf("*");
            }
            else
            {
                printf(" ");
            }
        }
        printf("\n");
    }
}

输出。

Enter the Number of rows = 8
Enter the Number of Columns = 16
****************
*              *
*              *
*              *
*              *
*              *
*              *
****************

C 语言打印菱形星型图案 *

此示例打印菱形星型图案。更多示例请点击>> 此处

#include<stdio.h>
 
int main(void)
{
    int rows;
    printf("Enter Rhombus Star Pattern Rows =  ");
    scanf("%d", &rows);
    
    for(int i = rows; i >= 1; i--)
    {
        for(int j = 1; j <= i - 1; j++)
        {
            printf("  ");
        }
        for(int k = 1; k <= rows; k++)
        {
            printf("* ");
        }
        printf("\n");
    }
}

输出

Enter Rhombus Star Pattern Rows =  14
                          * * * * * * * * * * * * * * 
                        * * * * * * * * * * * * * * 
                      * * * * * * * * * * * * * * 
                    * * * * * * * * * * * * * * 
                  * * * * * * * * * * * * * * 
                * * * * * * * * * * * * * * 
              * * * * * * * * * * * * * * 
            * * * * * * * * * * * * * * 
          * * * * * * * * * * * * * * 
        * * * * * * * * * * * * * * 
      * * * * * * * * * * * * * * 
    * * * * * * * * * * * * * * 
  * * * * * * * * * * * * * * 
* * * * * * * * * * * * * * 

镜像菱形星型图案

有关镜像菱形星型图案的更多示例,请点击>> 此处

#include<stdio.h>
 
int main(void)
{
    int rows;
    printf("Enter Mirrored Rhombus Star Pattern Rows =  ");
    scanf("%d", &rows);
    
    for(int i = 1; i <= rows; i++)
    {
        for(int j = 1; j < i; j++)
        {
            printf("  ");
        }
        for(int k = 1; k <= rows; k++)
        {
            printf("* ");
        }
        printf("\n");
    }
}

输出。

Enter Mirrored Rhombus Star Pattern Rows =  13
* * * * * * * * * * * * * 
  * * * * * * * * * * * * * 
    * * * * * * * * * * * * * 
      * * * * * * * * * * * * * 
        * * * * * * * * * * * * * 
          * * * * * * * * * * * * * 
            * * * * * * * * * * * * * 
              * * * * * * * * * * * * * 
                * * * * * * * * * * * * * 
                  * * * * * * * * * * * * * 
                    * * * * * * * * * * * * * 
                      * * * * * * * * * * * * * 
                        * * * * * * * * * * * * * 

空心菱形星型图案

有关打印空心菱形星型图案的更多示例,请点击>> 此处

#include<stdio.h>
 
int main(void)
{
    int i, j, k, rows;
    printf("Enter Hollow Rhombus Star Pattern Rows =  ");
    scanf("%d", &rows);
    
    for(i = rows; i >= 1; i--)
    {
        for(j = 1; j <= i - 1; j++)
        {
            printf(" ");
        }
        for(k = 1; k <= rows; k++)
        {
            if(i == 1 || i == rows || k == 1 || k == rows)
            {
                printf("* ");
            }
            else
            {
                printf("  ");
            }
        }
        printf("\n");
    }
}

输出。

Enter Hollow Rhombus Star Pattern Rows =  9
        * * * * * * * * * 
       *               * 
      *               * 
     *               * 
    *               * 
   *               * 
  *               * 
 *               * 
* * * * * * * * * 

空心镜像菱形星型图案

有关空心镜像菱形星型图案的更多示例,请点击>> 此处

#include<stdio.h>
 
int main(void)
{
    int i, j, rows;
    printf("Enter Hollow Mirrored Rhombus Rows =  ");
    scanf("%d", &rows);
    
    for(i = 1; i <= rows; i++)
    {
        for(j = i; j > 0; j--)
        {
            printf(" ");
        }
        
        if(i == 1 || i == rows)
        {
            for(j = 1; j <= rows; j++)
            {
                printf("*");
            }
        }
        else
        {
            for(j = 1; j <= rows; j++)
            {
                if(j == 1 || j == rows)
                {
                    printf("*");
                }
                else
                {
                    printf(" ");
                }
            }
        }
        printf("\n");
    }
}

输出。

Enter Hollow Mirrored Rhombus Rows =  12
 ************
  *          *
   *          *
    *          *
     *          *
      *          *
       *          *
        *          *
         *          *
          *          *
           *          *
            ************

C 语言打印正方形星型图案 *

此示例打印正方形星型图案。更多示例请点击>> 此处

#include<stdio.h>
 
int main(void)
{
    int Side;
    
    printf("Enter Any Side of a Square = ");
    scanf("%d", &Side);
    
    for(int i = 0; i < Side; i++)
    {
        for(int j = 0; j < Side; j++)
        {
            printf("* ");
        }
        printf("\n");
    }
}

输出

Enter Any Side of a Square = 12
* * * * * * * * * * * * 
* * * * * * * * * * * * 
* * * * * * * * * * * * 
* * * * * * * * * * * * 
* * * * * * * * * * * * 
* * * * * * * * * * * * 
* * * * * * * * * * * * 
* * * * * * * * * * * * 
* * * * * * * * * * * * 
* * * * * * * * * * * * 
* * * * * * * * * * * * 
* * * * * * * * * * * * 

带对角线的空心正方形图案

有关带对角线的空心正方形图案的更多示例,请点击>> 此处

#include<stdio.h>
 
int main(void)
{
    int r;
    
    printf("Enter Hollow Square with Diagonals Rows =  ");
    scanf("%d", &r);
    
    for(int i = 1; i <= r; i++)
    {
        for(int  j = 1; j <= r; j++)
        {
            if(i == 1 || i == r || i == j || j == 1 || j == r || j == r - i + 1)
            {
                printf("* ");
            }
            else
            {
                printf("  ");
            }
        }
        printf("\n");
    }
}

输出。

Enter Hollow Square with Diagonals Rows =  14
* * * * * * * * * * * * * * 
* *                     * * 
*   *                 *   * 
*     *             *     * 
*       *         *       * 
*         *     *         * 
*           * *           * 
*           * *           * 
*         *     *         * 
*       *         *       * 
*     *             *     * 
*   *                 *   * 
* *                     * * 
* * * * * * * * * * * * * * 

空心正方形星型图案

有关打印空心正方形星型图案的更多示例,请点击>> 此处

#include<stdio.h>
 
int main(void)
{
    int Side;
    
    printf("Enter Any Side of a Square = ");
    scanf("%d", &Side);
    
    for(int i = 0; i < Side; i++)
    {
        for(int j = 0; j < Side; j++)
        {
            if(i == 0 || i == Side-1 || j == 0 || j == Side-1)
            {
                printf("* ");
            }
            else
            {
                printf("  ");
            }
        }
        printf("\n");
    }
}

输出。

Enter Any Side of a Square = 9
* * * * * * * * * 
*               * 
*               * 
*               * 
*               * 
*               * 
*               * 
*               * 
* * * * * * * * * 

C 语言打印沙漏星型图案 *

此示例使用 for 循环打印沙漏星型图案。更多示例请点击>> 此处

#include <stdio.h>

void loopLogic(int rows, int i)
{
    for (int j = 1; j < i; j++ )
    {
        printf(" ");
    }
   for (int k = i; k <= rows; k++ )
    {
        printf("* ");
    }
    printf("\n");
}

int main(void)  {
    int i, rows;
    
    printf("Enter Sandglass Star Pattern Rows = ");
    scanf("%d",&rows);
    
    for (i = 1; i <= rows; i++)
    {
        loopLogic(rows, i);
    }
    
    for (i = rows - 1; i >= 1; i--)
    {
        loopLogic(rows, i);
    }
}

输出

Enter Sandglass Star Pattern Rows = 11
* * * * * * * * * * * 
 * * * * * * * * * * 
  * * * * * * * * * 
   * * * * * * * * 
    * * * * * * * 
     * * * * * * 
      * * * * * 
       * * * * 
        * * * 
         * * 
          * 
         * * 
        * * * 
       * * * * 
      * * * * * 
     * * * * * * 
    * * * * * * * 
   * * * * * * * * 
  * * * * * * * * * 
 * * * * * * * * * * 
* * * * * * * * * * * 

空心沙漏星型图案

有关空心沙漏星型图案的更多示例,请点击>> 此处

#include <stdio.h>

void loopLogic(int rows, int i)
{
    for (int j = 1; j < i; j++ )
    {
        printf(" ");
    }
    for (int k = i; k <= rows; k++ )
    {
        if (i == 1 || k == i || k == rows)
        {
            printf("* ");
        }
        else
        {
            printf("  ");
        }
    }
    printf("\n");
}

int main(void)  {
    int i, rows;
    
    printf("Enter Hollow Sandglass Star Pattern Rows = ");
    scanf("%d",&rows);
    
    for (i = 1; i <= rows; i++)
    {
        loopLogic(rows, i);
    }
    
    for (i = rows - 1; i >= 1; i--)
    {
        loopLogic(rows, i);
    }
}

输出

Enter Hollow Sandglass Star Pattern Rows = 8
* * * * * * * * 
 *           * 
  *         * 
   *       * 
    *     * 
     *   * 
      * * 
       * 
      * * 
     *   * 
    *     * 
   *       * 
  *         * 
 *           * 
* * * * * * * * 

C 语言打印三角形星型图案

下面的三角形程序使用嵌套的 for 循环来迭代行和列并打印星号。有关三角形星型图案的更多信息,请点击>> 此处

#include<stdio.h>
 
int main(void)
{
    int n;
    printf("Enter Triangle Rows =  ");
    scanf("%d", &n);
    
    for (int i = 1 ; i <= n; i++ )
    {
        for (int j = 0 ; j < n - i; j++ )
        {
            printf("  ");
        }
        for (int k = 0 ; k < i * 2 - 1; k++ )
        {
            printf("* ");
        }
        printf("\n");
    }
}

输出

Enter Triangle Rows =  15
                            * 
                          * * * 
                        * * * * * 
                      * * * * * * * 
                    * * * * * * * * * 
                  * * * * * * * * * * * 
                * * * * * * * * * * * * * 
              * * * * * * * * * * * * * * * 
            * * * * * * * * * * * * * * * * * 
          * * * * * * * * * * * * * * * * * * * 
        * * * * * * * * * * * * * * * * * * * * * 
      * * * * * * * * * * * * * * * * * * * * * * * 
    * * * * * * * * * * * * * * * * * * * * * * * * * 
  * * * * * * * * * * * * * * * * * * * * * * * * * * * 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * 

空心三角形星型图案

有关空心三角形星型图案的信息,请点击>> 此处

#include<stdio.h>

int main(void)
{
    int i, j, k, n;
    
    printf("Enter Hollow Triangle Rows =  ");
    scanf("%d", &n);
    
    for (i = 1 ; i <= n; i++ )
    {
        for ( j = 1 ; j <= n - i; j++ )
        {
            printf("  ");
        }
        for ( k = 1 ; k <= i * 2 - 1; k++ )
        {
            if (i == 1 || i == n || k == 1 || k == i * 2 - 1 )
                printf("* ");
            else
                printf("  ");
        }
        printf("\n");
    }
}

输出

Enter Hollow Triangle Rows =  14
                          * 
                        *   * 
                      *       * 
                    *           * 
                  *               * 
                *                   * 
              *                       * 
            *                           * 
          *                               * 
        *                                   * 
      *                                       * 
    *                                           * 
  *                                               * 
* * * * * * * * * * * * * * * * * * * * * * * * * * * 

倒三角形星型图案

有关倒三角形星型图案的信息,请点击>> 此处

#include<stdio.h>
 
int main(void)
{
    int n;
    printf("Enter Inverted Triangle Rows =  ");
    scanf("%d", &n);
    
    for (int i = n ; i > 0; i-- )
    {
        for (int j = 1 ; j <= n - i; j++ )
        {
            printf("  ");
        }
        for (int  k = 1 ; k <= i * 2 - 1; k++ )
        {
            printf("* ");
        }
        printf("\n");
    }
}

输出

Enter Inverted Triangle Rows =  16
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
    * * * * * * * * * * * * * * * * * * * * * * * * * * * 
      * * * * * * * * * * * * * * * * * * * * * * * * * 
        * * * * * * * * * * * * * * * * * * * * * * * 
          * * * * * * * * * * * * * * * * * * * * * 
            * * * * * * * * * * * * * * * * * * * 
              * * * * * * * * * * * * * * * * * 
                * * * * * * * * * * * * * * * 
                  * * * * * * * * * * * * * 
                    * * * * * * * * * * * 
                      * * * * * * * * * 
                        * * * * * * * 
                          * * * * * 
                            * * * 
                              * 

向下三角形星型图案

有关向下三角形星型图案的信息,请点击>> 此处

#include<stdio.h>
 
int main(void)
{
    int n;
    printf("Enter Downward Triangle Rows =  ");
    scanf("%d", &n);
    
    for (int i = n - 1; i >= 0; i-- )
    {
        for (int j = 0 ; j <= i; j++ )
        {
            printf("*  ");
        }
        printf("\n");
    }
}

输出

Enter Downward Triangle Rows =  13
*  *  *  *  *  *  *  *  *  *  *  *  *  
*  *  *  *  *  *  *  *  *  *  *  *  
*  *  *  *  *  *  *  *  *  *  *  
*  *  *  *  *  *  *  *  *  *  
*  *  *  *  *  *  *  *  *  
*  *  *  *  *  *  *  *  
*  *  *  *  *  *  *  
*  *  *  *  *  *  
*  *  *  *  *  
*  *  *  *  
*  *  *  
*  *  
* 

右侧帕斯卡三角形星型图案

有关右侧帕斯卡三角形星型图案的更多信息,请点击>> 此处

#include<stdio.h>
void logicOutput(int n, int i)
{
    for (int j = 0; j < i; j++)
    {
        printf("* ");
    }
    printf("\n");
}

int main(void)
{
    int i, n;
    
    printf("Enter Right Pascal Triangle Rows =  ");
    scanf("%d", &n);
    
    for (i = 0; i < n; i++)
    {
        logicOutput(n, i);
    }
    for (i = n; i >= 0; i--)
    {
        logicOutput(n, i);
    }
}

输出

Enter Right Pascal Triangle Rows =  12

* 
* * 
* * * 
* * * * 
* * * * * 
* * * * * * 
* * * * * * * 
* * * * * * * * 
* * * * * * * * * 
* * * * * * * * * * 
* * * * * * * * * * * 
* * * * * * * * * * * * 
* * * * * * * * * * * 
* * * * * * * * * * 
* * * * * * * * * 
* * * * * * * * 
* * * * * * * 
* * * * * * 
* * * * * 
* * * * 
* * * 
* * 
*

左侧帕斯卡三角形星型图案

有关左侧帕斯卡三角形星型图案的更多信息,请点击>> 此处

#include<stdio.h>

void logicOutput(int n, int i)
{
    int j, k;
    for (j = i; j < n; j++)
    {
        printf("  ");
    }
    for (k = 1; k <= i; k++)
    {
        printf("* ");
    }
    printf("\n");
}

int main(void)
{
    int i, n;
    
    printf("Enter Left Pascal Triangle Rows =  ");
    scanf("%d", &n);
    
    for (i = 1; i <= n; i++) {
        logicOutput(n, i);
    }
    for (i = n - 1; i >= 1; i--) {
        logicOutput(n, i);
    }
}

输出

Enter Left Pascal Triangle Rows =  13
                        * 
                      * * 
                    * * * 
                  * * * * 
                * * * * * 
              * * * * * * 
            * * * * * * * 
          * * * * * * * * 
        * * * * * * * * * 
      * * * * * * * * * * 
    * * * * * * * * * * * 
  * * * * * * * * * * * * 
* * * * * * * * * * * * * 
  * * * * * * * * * * * * 
    * * * * * * * * * * * 
      * * * * * * * * * * 
        * * * * * * * * * 
          * * * * * * * * 
            * * * * * * * 
              * * * * * * 
                * * * * * 
                  * * * * 
                    * * * 
                      * * 
                        *

空心左侧帕斯卡三角形星型图案

有关空心左侧帕斯卡三角形星型图案的更多信息,请点击>> 此处

#include<stdio.h>
void logicOutput(int n, int i)
{
    for (int j = i; j < n; j++)  {
        printf("  ");
    }
    for (int k = 1; k <= i; k++)  {
        if (k == 1 || k == i )
            printf("* ");
        else
            printf("  ");
    }
    printf("\n");
}
int main(void)  {
    int i, n;
    
    printf("Enter Hollow Left Pascal Triangle Rows =  ");
    scanf("%d", &n);
    
    for (i = 1; i <= n; i++)  {
        logicOutput(n, i);
    }
    for (i = n - 1; i >= 1; i--)  {
        logicOutput(n, i);
    }
}

输出

Enter Hollow Left Pascal Triangle Rows =  12
                      * 
                    * * 
                  *   * 
                *     * 
              *       * 
            *         * 
          *           * 
        *             * 
      *               * 
    *                 * 
  *                   * 
*                     * 
  *                   * 
    *                 * 
      *               * 
        *             * 
          *           * 
            *         * 
              *       * 
                *     * 
                  *   * 
                    * * 
                      *

空心右侧帕斯卡三角形星型图案

有关空心右侧帕斯卡三角形星型图案的更多详细信息,请点击>> 此处

#include<stdio.h>

void logicOutput(int n, int i)
{
    for (int j = 1; j <= i; j++)  {
        if (j == 1 || j == i )
            printf("* ");
        else
            printf("  ");
    }
    printf("\n");
}

int main(void)
{
    int i, n;
    
    printf("Enter Hollow Right Pascal Triangle Rows =  ");
    scanf("%d", &n);
    
    for (i = 0; i < n; i++)  {
        logicOutput(n, i);
    }
    for (i = n; i >= 0; i--) {
        logicOutput(n, i);
    }
}

输出

Enter Hollow Right Pascal Triangle Rows =  10

* 
* * 
*   * 
*     * 
*       * 
*         * 
*           * 
*             * 
*               * 
*                 * 
*               * 
*             * 
*           * 
*         * 
*       * 
*     * 
*   * 
* * 
* 

其余星型图案程序

圣诞树星型图案

有关圣诞树星型图案的更多示例,请点击>> 此处

#include <stdio.h>
int main(void)
{
    int width, height, sp, i, j, k, n = 1;

    printf("Enter Chirstmas Tree Width & Height = ");
    scanf("%d %d", &width, &height);

    sp = width * height;

    for (int x = 1; x <= height; x++)
    {
        for (i = n; i <= width; i++)
        {
            for (j = sp; j >= i; j--)
            {
                printf(" ");
            }
            for (k = 1; k <= i; k++)
            {
                printf("* ");
            }
            printf("\n");
        }
        n = n + 2;
        width = width + 2;
    }
    for (i = 1; i <= height - 1; i++)
    {
        for (j = sp - 3; j >= 0; j--)
        {
            printf(" ");
        }
        for (k = 1; k <= height - 1; k++)
        {
            printf("* ");
        }
        printf("\n");
    }
}

输出。

Enter Chirstmas Tree Width & Height = 6 4
                        * 
                       * * 
                      * * * 
                     * * * * 
                    * * * * * 
                   * * * * * * 
                      * * * 
                     * * * * 
                    * * * * * 
                   * * * * * * 
                  * * * * * * * 
                 * * * * * * * * 
                    * * * * * 
                   * * * * * * 
                  * * * * * * * 
                 * * * * * * * * 
                * * * * * * * * * 
               * * * * * * * * * * 
                  * * * * * * * 
                 * * * * * * * * 
                * * * * * * * * * 
               * * * * * * * * * * 
              * * * * * * * * * * * 
             * * * * * * * * * * * * 
                      * * * 
                      * * * 
                      * * * 

指数递增星型图案

有关指数递增星型图案的更多示例,请点击>> 此处

#include <stdio.h>
#include <math.h>
 
int main(void)
{
    int Rows;
    
    printf("Enter the Number of Rows:  ");
    scanf("%d", &Rows);
    
    for (int i = 0 ; i <= Rows; i++ )
    {
        for (int j = 1 ; j <= pow(2, i); j++ )
        {
            printf("* ");
        }
        printf("\n");
    }
}

输出。

Enter the Number of Rows:  5
* 
* * 
* * * * 
* * * * * * * * 
* * * * * * * * * * * * * * * * 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 

左箭头星型图案

有关左箭头星型图案的更多示例,请点击>> 此处

#include<stdio.h>

int main(void)
{
    int i, j, n;
    printf("Enter Left Arrow Star Pattern Rows =  ");
    scanf("%d", &n);
    
    for(i = 1; i <= n; i++)
    {
        for(j = 1; j <= n - i; j++)
        {
            printf(" ");
        }
        for(j = i; j <= n; j++)
        {
            printf("*");
        }
        printf("\n");
    }
    
    for(i = 1; i <= n; i++)
    {
        for(j = 1; j < i; j++)
        {
            printf(" ");
        }
        for(j = 1; j <= i; j++)
        {
            printf("*");
        }
        printf("\n");
    }
}

输出。

Enter Left Arrow Star Pattern Rows =  7
      *******
     ******
    *****
   ****
  ***
 **
*
*
 **
  ***
   ****
    *****
     ******
      *******

右箭头星型图案

有关右箭头星型图案的更多示例,请点击>> 此处

#include<stdio.h>

int main(void)
{
    int i, j, n;
    printf("Enter Right Arrow Star Pattern Rows =  ");
    scanf("%d", &n);
    
    for(i = 1; i <= n; i++)
    {
        for(j = 1; j <= n; j++)
        {
            if(j < i)
                printf(" ");
            else
                printf("*");
        }
        printf("\n");
    }
    
    for(i = 1; i <= n; i++)
    {
        for(j = 1; j <= n; j++)
        {
            if(j < n - i)
                printf(" ");
            else
                printf("*");
        }
        printf("\n");
    }
}

输出。

Enter Right Arrow Star Pattern Rows =  9
*********
 ********
  *******
   ******
    *****
     ****
      ***
       **
        *
       **
      ***
     ****
    *****
   ******
  *******
 ********
*********
*********

加号 (+) 星型图案

有关加号 (+) 星型图案的更多示例,请点击>> 此处

#include<stdio.h>
int main(void)
{
    int i, j, rows;
    printf("Enter Plus Pattern Rows =  ");
    scanf("%d", &rows);
    
    for(i = 1; i <= rows * 2 - 1; i++)
    {
        if(i != rows)
        {
            for(j = 1; j <= rows; j++)
            {
                if(j == rows)
                {
                    printf("*");
                }
                printf(" ");
            }
        }
        else
        {
            for(j = 1; j <= rows * 2 - 1; j++)
            {
                printf("*");
            }
        }
        printf("\n");
    }
}

输出。

Enter Plus Pattern Rows =  8
       * 
       * 
       * 
       * 
       * 
       * 
       * 
***************
       * 
       * 
       * 
       * 
       * 
       * 
       * 

H 星型图案

有关 H 星型图案的更多示例,请点击>> 此处

#include <stdio.h>

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

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

    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");
    }
}

输出。

Enter H Pattern Rows = 6
*          *
**        **
***      ***
****    ****
*****  *****
************
*****  *****
****    ****
***      ***
**        **
*          *

V 星型图案

有关 V 星型图案的更多示例,请点击>> 此处

#include <stdio.h>
void loopLogic(int rows, int i)
{
    for (int j = 1; j <= i; j++)
    {
        printf("*");
    }
}
int main(void)
{
    int rows;

    printf("Enter V Shape Star Pattern Rows = ");
    scanf("%d", &rows);

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

输出。

Enter V Shape Star Pattern Rows = 9
*                *
**              **
***            ***
****          ****
*****        *****
******      ******
*******    *******
********  ********
******************

倒 V 星型图案

有关打印倒 V 星型图案的更多示例,请点击>> 此处

#include <stdio.h>
void loopLogic(int rows, int i)
{
    for (int j = 1; j <= i; j++)
    {
        printf("*");
    }
}
int main(void)
{
    int rows;

    printf("Enter Inverted V Shape Pattern Rows = ");
    scanf("%d", &rows);

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

输出。

Enter Inverted V Shape Pattern Rows = 8
****************
*******  *******
******    ******
*****      *****
****        ****
***          ***
**            **
*              *

W 星型图案

有关打印 W 星型图案的 C 语言程序的更多示例,请点击>> 此处

#include <stdio.h>

void starsDisplay(int rows)
{
    for (int i = 0; i < rows; ++i)
    {
        printf("*");
    }
}
void spaceDisplay(int rows)
{
    for (int i = 0; i < rows; ++i)
    {
        printf(" ");
    }
}

int main(void)
{
    int rows;

    printf("Enter W Shape Star Pattern Rows = ");
    scanf("%d", &rows);

    for (int i = 0; i < rows; i++)
    {
        starsDisplay(i + 1);
        spaceDisplay(rows - i - 1);
        starsDisplay(rows - i + 1);
        spaceDisplay(2 * i);
        starsDisplay(rows - i);
        spaceDisplay(rows - i - 1);
        starsDisplay(i + 1);
        printf("\n");
    }
}

输出。

Enter W Shape Star Pattern Rows = 9
*        *******************        *
**       *********  ********       **
***      ********    *******      ***
****     *******      ******     ****
*****    ******        *****    *****
******   *****          ****   ******
*******  ****            ***  *******
******** ***              ** ********
***********                **********

X 星型图案

有关 X 星型图案的更多示例,请点击>> 此处

#include <stdio.h>

int main(void)
{
    int rows;
    printf("Enter X Pattern rows =  ");
    scanf("%d", &rows);

   int k = rows * 2 - 1;

   for(int i = 1; i <= k; i++)
   {
       for(int j = 1; j <= k; j++)
       {
           if(j == i || j == (k - i + 1))
           {
               printf("*");
           }
           printf(" ");
       }
       printf("\n");
   }
    return 0;
}

输出。

Enter X Pattern rows =  7
*            * 
 *          *  
  *        *   
   *      *    
    *    *     
     *  *      
      *       
     *  *      
    *    *     
   *      *    
  *        *   
 *          *  
*            * 

8 字星型图案

有关 8 字星型图案的更多示例,请点击>> 此处

#include <stdio.h>

int main(void)
{
    int rows;
    
    printf("Enter 8 Star Pattern Rows = ");
    scanf("%d", &rows);
    
    for (int i = 1; i <= rows * 2 - 1; i++)
    {
        if (i == 1 || i == rows || i == rows * 2 - 1)
        {
            for (int j = 1; j <= rows; j++)
            {
                if (j == 1 || j == rows)
                {
                    printf(" ");
                }
                else
                {
                    printf("*");
                }
            }
        }
        else
        {
            for (int k = 1; k <= rows; k++)
            {
                if (k == 1 || k == rows)
                {
                    printf("*");
                }
                else
                {
                    printf(" ");
                }
            }
        }
        printf("\n");
    }
}

输出。

Enter 8 Star Pattern Rows = 7
 ***** 
*     *
*     *
*     *
*     *
*     *
 ***** 
*     *
*     *
*     *
*     *
*     *
 *****