写一个函数根据传递的正整数n,输出n行由*组成的等腰三角形(第一行1个*,第二行3个*,第3行5个*,依次类推),主函数中输入n,调用函数实现等腰三角形的输出
时间: 2023-12-31 15:03:39 浏览: 58
好的,我可以帮你写一个Python函数来实现这个功能。以下是代码实现:
```python
def print_triangle(n):
for i in range(n):
print(" "*(n-i-1), end="")
print("*"*(2*i+1))
# 测试代码
n = int(input("请输入等腰三角形的行数:"))
print_triangle(n)
```
运行结果:
```
请输入等腰三角形的行数:5
*
***
*****
*******
*********
```
你可以根据需要自行修改代码中的空格和星号的数量和形状。希望能对你有帮助!
相关问题
写一个函数根据传递的正整数n,输出n行由*组成的等腰三角形(第一行1个*,第二行3个*,第3行5个*,依次类推),主函数中输入n,调用函数实现等腰三角形的输出
好的,这是一个简单的实现:
```python
def print_triangle(n):
for i in range(n):
print(' ' * (n-i-1) + '*' * (2*i+1))
n = int(input('请输入正整数n:'))
print_triangle(n)
```
输入样例:
```
请输入正整数n:5
```
输出样例:
```
*
***
*****
*******
*********
```
用C语言写写一个函数根据传递的正整数n,输出n行由*组成的等腰三角形(第一行1个*,第二行3个*,第3行5个*,依次类推),主函数中输入n.调用函数实现等腰三角形的输出。"
好的,下面是用C语言实现的代码:
```c
#include <stdio.h>
void printTriangle(int n) {
int i, j, k;
for (i = 1; i <= n; i++) {
// 打印空格
for (j = 1; j <= n - i; j++) {
printf(" ");
}
// 打印 *
for (k = 1; k <= 2 * i - 1; k++) {
printf("*");
}
printf("\n");
}
}
int main() {
int n;
printf("请输入要输出等腰三角形的行数:");
scanf("%d", &n);
printTriangle(n);
return 0;
}
```
运行结果:
```
请输入要输出等腰三角形的行数:5
*
***
*****
*******
*********
```
在这个程序中,我们首先定义了一个函数 `printTriangle`,它接受一个整数参数 n,表示要输出等腰三角形的行数。然后我们使用三个 for 循环来实现等腰三角形的输出:
- 外层循环控制行数,从 1 到 n。
- 第一个内层循环控制每行输出的空格数,从 n-i 个开始,逐渐减少。
- 第二个内层循环控制每行输出的 * 号数,从 2i-1 个开始,逐渐增加。
最后,我们在主函数中读取用户输入的行数 n,然后调用 `printTriangle` 函数输出等腰三角形。
阅读全文