输入正整数n,输出n行用星号打印的空心等腰三角形。 输入格式 一个整数n(n<=30) 输出格式 见样例 样例 input 4 output * * * * * *******
时间: 2024-01-10 22:21:27 浏览: 149
以下是两种打印空心等腰三角形的例子:
1. 使用C语言编写的程序:
```c
#include <stdio.h>
int main() {
int n,i,j;
printf("请输入一个整数:");
scanf("%d",&n);
for(i = 1; i <= n; i++) {
for(j = 1; j <= n-i; j++)
printf(" ");
for(j = 1; j <= i; j++) {
if(j == 1 || j == i || i == n)
printf("* ");
else
printf(" ");
}
printf("\n");
}
return 0;
}
```
2. 使用Python编写的程序:
```python
n = int(input())
= 2 * n - 1
for i in range(1, n + 1):
a = "*" * (2 * i - 1)
if i == n:
print(a.center(t))
else:
print(a.center(t, " "))
```
相关问题
输入格式 仅一行,一个正整数n,表示三角形的高度(5<=n<=20)。 输出格式 由字符*组成空心直角三角形 输入样例 5 输出样例* ** * * * * *****
### 回答1:
根据输入的n,输出空心直角三角形的示例如下:n=5时:* ** * * * * *****n=6时:* ** ** * * * * ******n=7时:* ** ** ** * * * * ********
### 回答2:
根据题意,我们需要输出一个空心直角三角形,其高度为n。
首先,我们可以发现三角形的第一行和最后一行都是由n个"*"组成的,因此我们可以先输出这两行。
其次,我们可以发现三角形的左侧边缘由"*"组成,右侧边缘由空格组成,因此我们可以输出第i行的第一个字符和最后一个字符,并在它们之间输出n-2个空格。
最后,对于第1行和第n行以外的行,我们可以发现除边缘的"*"以外,其他位置都是空格,因此我们可以在第i行输出第i个字符和第n个字符,并在它们之间输出i-2个空格。
综上所述,我们可以如下编写代码实现:
```python
n = int(input()) # 输入三角形的高度
# 输出第一行
for i in range(n):
print("*", end=" ")
print()
# 输出第2到n-1行
for i in range(2, n):
print("*", end=" ") # 输出左边缘的"*"
for j in range(i-2):
print(" ", end=" ") # 输出空格
print("*") # 输出右边缘的"*"
# 输出最后一行
for i in range(n):
print("*", end=" ")
print()
```
运行以上代码,对于输入样例5,输出结果为:
```
* * * * *
* *
* *
* *
* * * * *
```
### 回答3:
首先,根据给定的正整数n,我们可以确定最外层的星号个数为n。接下来,我们需要打印出n-2行的空心直角三角形。
对于每一行,我们可以发现第一个星号和最后一个星号都是实心的,而中间的星号为空心的。所以,我们只需要在第i行的第i个位置和第n个位置上打印星号,其他位置打印空格。
具体步骤如下:
1. 读取输入的正整数n。
2. 打印出第一行的n个星号。
3. 打印接下来的n-2行:
1) 在第i行,打印一个星号和i-2个空格,再打印一个星号。
2) 注意:由于第i行存在一个星号和i-2个空格,所以总共需要打印n-i个符号。
4. 打印出最后一行的n个星号。
以下是用300字描述这个过程的一种可能的实现:
读入整数n表示三角形的高度。先打印上三角形的n-1行,每行的空格数为行号减一,星号数为n-行号;最后一行的星号数为n。然后打印下三角形的n行,每行的星号数恒为n。每次打印完一整行星号后换行。
具体步骤如下:
1. 读取输入的正整数n;
2. 打印上三角形的n-1行:
- 循环i从1到n-1,每次迭代打印一行星号;
- 在第i行,先打印i个空格,再打印n-i个星号;
- 打印完一整行星号后换行;
3. 打印下三角形的n行:
- 循环i从1到n,每次迭代打印一行星号;
- 在第i行,打印n个星号;
- 打印完一整行星号后换行。
C语言7-2 空心等腰三角形 请编写程序,输入等腰三角形的高,输出由星号勾勒出的等腰三角形。 输入格式 行数 (正整数) 输出格式 星号勾勒出的等腰三角形 (参见输出样例) 输入样例1 1 输出样例1 * 输入样例2 5 输出样例2 * * * * * * * *********
```c
#include <stdio.h>
int main() {
int height, i, j;
scanf("%d", &height);
for (i = 1; i <= height; i++) {
if (i == height) {
for (j = 1; j <= 2 * i - 1; j++) {
printf("*");
}
} else {
for (j = 1; j <= 2 * i - 1; j++) {
if (j == 1 || j == 2 * i - 1) {
printf("*");
} else {
printf(" ");
}
}
}
printf("\n");
}
return 0;
}
```
阅读全文