以下是一个使用嵌套循环打印六边形的 C 程序:

#include <stdio.h>

int main() {
    int rows;
    printf("请输入要打印的行数:");
    scanf("%d", &rows);

    // 打印上半部分
    for (int i = 1; i <= rows; i++) {
        // 打印空格
        for (int j = 1; j <= rows - i; j++) {
            printf(" ");
        }
        // 打印星号
        for (int k = 1; k <= i * 2 - 1; k++) {
            printf("*");
        }
        printf("\n");
    }

    // 打印下半部分
    for (int i = rows - 1; i >= 1; i--) {
        // 打印空格
        for (int j = 1; j <= rows - i; j++) {
            printf(" ");
        }
        // 打印星号
        for (int k = 1; k <= i * 2 - 1; k++) {
            printf("*");
        }
        printf("\n");
    }

    return 0;
}

程序首先提示用户输入要打印的行数,然后使用嵌套循环打印六边形。外层循环从 1 开始递增,内层循环在每一行中打印相应数量的空格和星号。打印上半部分时,空格数量从最大值开始递减,星号数量从 1 开始递增;打印下半部分时,空格数量从 1 开始递增,星号数量从最大值开始递减。最后,程序在每行末尾输出一个换行符,以便下一行能够顺利打印。

注意: 如果程序运行出来不是你想要的六边形,可能是因为你输入的行数不够或者太多了。你可以尝试调整输入的行数,看看能否得到你想要的六边形。如果还是不行,你可以检查一下程序中的循环条件和计算公式是否正确,或者尝试修改一下程序中的打印字符。

C语言绘制六边形:代码示例和解释

原文地址: https://www.cveoy.top/t/topic/jBaX 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录