阅读量:2
可以使用两个嵌套的for循环来打印菱形,其中外层循环用于控制每行的空格数量和星号数量,内层循环用于打印空格和星号。
以下是一个例子:
#include <stdio.h> int main() { int rows, i, j, space; printf("请输入菱形的行数:"); scanf("%d", &rows); // 打印上半部分 for (i = 1; i <= rows; i++) { // 打印空格 for (space = 1; space <= rows - i; space++) { printf(" "); } // 打印星号 for (j = 1; j <= 2 * i - 1; j++) { printf("*"); } printf("\n"); } // 打印下半部分 for (i = rows - 1; i >= 1; i--) { // 打印空格 for (space = 1; space <= rows - i; space++) { printf(" "); } // 打印星号 for (j = 1; j <= 2 * i - 1; j++) { printf("*"); } printf("\n"); } return 0; }
以上代码中,首先通过scanf
函数从用户处获取菱形的行数。然后通过两个嵌套的for循环打印上半部分的菱形,内层循环打印空格和星号。接着再通过两个嵌套的for循环打印下半部分的菱形,内层循环同样打印空格和星号。最后返回0表示程序正常结束。