for循环输出倒三角形
时间: 2023-12-21 10:23:58 浏览: 36
要使用for循环输出倒三角形,可以参考以下代码:
for (int i = 9; i >= 1; i -= 2) {
for (int j = 9; j > i; j -= 2)
Console.Write(" ");
for (int j = 0; j < i; j++)
Console.Write("*");
Console.Write("\n");
}
Console.ReadKey();
相关问题
for循环输出倒等腰三角形
要输出倒等腰三角形,可以使用嵌套的for循环来实现。下面是一个示例代码:
```python
rows = 5 # 三角形的行数
for i in range(rows, 0, -1): # 外层循环控制行数,从最大行数开始递减
for j in range(0, i): # 内层循环控制每行的输出个数
print("*", end=" ") # 输出星号,并以空格分隔
print() # 换行
```
这段代码会输出一个有5行的倒等腰三角形,每行的星号数量递减。运行结果如下:
```
* * * * *
* * * *
* * *
* *
*
```
c语言while循环输出倒三角形
这段C语言代码使用while循环输出倒三角形,具体实现方法是先根据输入的数字计算出需要输出的行数,然后分别输出上半部分和下半部分的倒三角形。其中,上半部分的行数从n开始递减,下半部分的行数从1开始递增。最后,还输出了中间三角形的角尖上的字符个数。
代码如下:
```
#include <stdio.h>
int main() {
int num, i, j, k;
char c;
scanf("%d %c", &num, &c);
int sum = 1; // 先假设需要sum个字符
int n = 0; // 给出的字符可以有n行的沙漏
while (sum <= num) {
sum += 2 * (2 * (n + 1) + 1);
n++; // 求出来的为上下两个倒三角形的行数,从0开始
}
for (i = n; i > 0; i--) {
for (j = 0; j < n - i; j++) {
printf(" ");
}
for (k = 0; k < 2 * i - 1; k++) {
printf("%c", c);
}
printf("\n");
} // 输出上半部分
for (i = 1; i < n; i++) {
for (j = 0; j < n - i - 1; j++) {
printf(" ");
}
for (k = 0; k < 2 * (i + 1) - 1; k++) {
printf("%c", c);
}
printf("\n");
} // 输出下半部分
printf("%d", (num - 2 * (n + n * (n - 1)) + 1)); // 运用了等差数列的前n项和公式来求。
// 因为2个n+n*(n-1)对于沙漏来说,中间三角形的角尖(1)被减了两次,所以要加回来。
return 0;
}
```