输入n个整数存入一维数组,再按逆序重新存放后再输出
时间: 2023-05-31 19:20:06 浏览: 654
### 回答1:
可以使用以下代码实现:
```python
n = int(input("请输入整数个数:"))
arr = []
for i in range(n):
num = int(input("请输入第{}个整数:".format(i+1)))
arr.append(num)
arr.reverse()
print("逆序存放后的数组为:", arr)
```
首先,通过 `input` 函数获取用户输入的整数个数 `n`,然后使用 `for` 循环遍历 `n` 次,每次获取用户输入的整数并将其添加到数组 `arr` 中。
接着,使用 `reverse` 方法将数组 `arr` 中的元素逆序排列。
最后,使用 `print` 函数输出逆序存放后的数组。
### 回答2:
这道题是需要对输入的n个整数进行逆序存储并输出。其中,一维数组是存放整数的数据结构,逆序存储是将原数组中的元素按相反的顺序再次存储到另一个新的数组中,输出则是将逆序后的数组中的元素依次打印出来。
那么,我们怎样来实现这个过程呢?
首先,我们需要一个数组来存储这n个输入的整数,设该数组为A。我们可以使用循环来逐个读取每个整数,并将其存储到数组A中。读取过程可以采用scanf函数,例如:
int A[n];
for(int i=0;i<n;i++){
scanf("%d",&A[i]);
}
接下来,我们需要重新将A数组中的元素按逆序存储到另一个数组中,设该数组为B。这个过程中,我们可以使用一个循环结合数组下标的变化,将A数组中的元素依次存储到B数组中的相应位置。具体实现如下:
int B[n];
for(int i=0;i<n;i++){
B[n-1-i]=A[i];
}
最后,我们只需要再用循环将B数组中的元素依次输出即可,例如:
for(int i=0;i<n;i++){
printf("%d ",B[i]);
}
这样,我们就完成了对输入n个整数进行逆序存储和输出的过程。
### 回答3:
将n个整数存入一维数组,可以使用循环读入,逐个将输入的整数存入数组的不同下标中,形成一个一维数组。接着,对这个数组按照逆序重新存放,即将数组元素倒序排列。
这个操作可以通过使用两个指针来实现。指针left初始指向数组的首位,指针right初始指向数组的末尾。接着交换left和right所指向的元素,然后left向后移动一位,right向前移动一位,重复这个过程,直到left>=right为止,此时数组的元素就被逆序重新存放了。
最后,再一次循环输出逆序存放后的一维数组。代码如下:
```python
# 输入n个整数存入一维数组,按逆序重新存放后再输出
n = int(input('请输入整数个数:'))
a = [] # 用来存储输入的整数
for i in range(n):
num = int(input('请输入第%d个整数:' % (i+1)))
a.append(num)
# 按逆序重新存放
left = 0
right = n - 1
while left < right:
# 交换left和right所指向的元素
temp = a[left]
a[left] = a[right]
a[right] = temp
left += 1
right -= 1
# 输出逆序存放后的一维数组
print('逆序存放后的数组为:')
for i in range(n):
print(a[i], end=' ')
```
例如,输入n=5,整数为[1,2,3,4,5],程序输出结果如下所示:
```
请输入整数个数:5
请输入第1个整数:1
请输入第2个整数:2
请输入第3个整数:3
请输入第4个整数:4
请输入第5个整数:5
逆序存放后的数组为:
5 4 3 2 1
```
因此,输入n个整数存入一维数组,再按逆序重新存放后再输出,可以使用循环输入,指针交换的方法来实现。
阅读全文