C 语言在正方形内打印空心菱形图案的程序

编写一个 C 语言程序,使用 for 循环、while 循环和自定义符号函数在正方形内打印空心菱形星形图案。

C 语言在正方形内打印空心菱形图案的程序

在此示例中,我们使用了多个嵌套的 for 循环来迭代行并在正方形图案内打印空心菱形图案。

#include<stdio.h>
int main(void)
{
    int i, j, k, rows;
    printf("Enter Hollow Diamond inside Square Rows =  ");
    scanf("%d", &rows);
    
    for (i = 1 ; i <= rows; i++ )
    {
        for (j = i ; j <= rows; j++ )
        {
            printf("*");
        }
        for (j = 1 ; j <= 2 * i - 2; j++ )
        {
            printf(" ");
        }
        for (k = i ; k <= rows; k++ )
        {
            printf("*");
        }
        printf("\n");
    }
    
    for (i = 1 ; i <= rows; i++ )
    {
        for (j = 1 ; j <= i; j++ )
        {
            printf("*");
            
        }
        for (k = 2 * i - 2 ; k < 2 * rows - 2; k++ )
        {
            printf(" ");
        }
        for (k = 1 ; k <= i; k++ )
        {
            printf("*");
        }
        printf("\n");
    }
}
C Program to Print Hollow Diamond Pattern inside a Square

在此 C 语言空心菱形星形图案在正方形 程序 中,我们将上面的 for 循环 代码替换为 while 循环,并使用 if else 块来获取结果。

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

这个 C 语言空心菱形图案在正方形中的程序与第二个示例相同。但是,我们将静态 * 符号替换为用户输入的特殊字符,并将 while 循环替换为 for 循环。

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