如何使用while循环打印出一个由*构成的菱形
时间: 2024-11-25 17:18:43 浏览: 17
用python打印1~20的整数实例讲解
5星 · 资源好评率100%
使用`while`循环打印菱形通常涉及到两部分:第一层是向下递增行数打印星号,第二层是向中心递减打印星号,直到达到中间点再反向打印回到顶部。下面是一个简单的示例,假设你想打印一个高度为5的菱形:
```c
#include <stdio.h>
int main() {
int rows = 5, space = rows - 1, i, j;
for(i = 1; i <= rows; ++i) {
for(j = 1; j <= space; ++j)
printf(" "); // 填充空格
for(j = 1; j <= 2 * i - 1; ++j)
printf("*"); // 打印星号
if(i != rows) {
printf("\n");
space--;
}
}
for(i = rows - 2; i >= 1; i--) {
for(j = 1; j <= space; ++j)
printf(" "); // 向内填充空格
for(j = 1; j <= 2 * i - 1; ++j)
printf("*"); // 内部打印星号
space++;
printf("\n");
}
return 0;
}
```
这里有两个嵌套的`for`循环,第一个循环控制行数,第二个循环控制每个行的星号。每次内部循环结束后检查是否到了最外层,如果不是则换行。
阅读全文