从键盘输入一个整数 n,输出n 个同心圆,半径为 1,2,... n。
时间: 2024-05-15 07:14:59 浏览: 11
```python
n = int(input("请输入一个整数n:"))
for i in range(1, n+1):
for j in range(-i+1, i):
if j == 0:
print("*", end="")
else:
print(" ", end="")
print("")
```
相关问题
c语言从键盘输入一个整数 n,输出n 个同心圆,半径为 1,2,... n。
```c
#include <stdio.h>
int main() {
int n;
printf("请输入n:");
scanf("%d", &n);
for(int i=1; i<=n; i++) {
for(int j=1; j<=2*n; j++) {
if((i*i) + (j-n-1)*(j-n-1) <= i*i) {
printf("* ");
}
else {
printf(" ");
}
}
printf("\n");
}
return 0;
}
```
解释:利用双重循环,外层循环控制圆的半径,内层循环控制圆的位置。在内层循环中,判断当前位置是否在圆内,如果在圆内则输出 *,否则输出空格。具体判断方法为计算当前位置到圆心的距离,如果距离小于等于半径,则在圆内。
从键盘输入一个整数n,打印出n*2-1行的菱形
好的,以下是代码实现:
```
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n, i, j, k;
printf("请输入一个整数n:");
scanf("%d", &n);
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");
}
for(i=n-1; i>=1; i--)
{
for(j=1; j<=n-i; j++)
printf(" ");
for(k=1; k<=2*i-1; k++)
printf("*");
printf("\n");
}
return 0;
}
```
这段代码实现了从键盘输入一个整数n,打印出n*2-1行的菱形。首先,我们使用 for 循环来打印上半部分的菱形,然后再使用 for 循环来打印下半部分的菱形。在每行输出时,我们使用两个 for 循环,第一个 for 循环用于打印空格,第二个 for 循环用于打印星号。