时间限制:1.000S 空间限制:128MB
题目描述
给定一个整数数组,编写一个程序实现以下功能:
1. 将输入的整数数组倒序输出,每个数之间用空格分隔。
2. 从正序数组中,每隔一个单位(即索引为奇数的元素),输出其值,同样用空格分隔。
输入描述
第一行包含一个整数 n,表示数组的长度。
接下来一行包含 n 个整数,表示数组的元素。
输出描述
首先输出倒序排列的数组元素,然后输出正序数组中每隔一个单位的元素。
输入示例
5
2 3 4 5 6
输出示例
6 5 4 3 2
2 4 6
提示信息
数据范围:
1 <= n <= 1000.
代码示例1(数组版本)
#include <iostream>
using namespace std;
int main()
{
int n;
cin >> n;//输入数组长度
int arr[n];//声明一个大小为n的整数数组
//输入数组元素
for(int i=0;i<n;i++)
{
cin >> arr[i];
}
//倒序输出数组,每个数之间用空格分隔
for(int i=n-1;i>=0;i--)
{
cout << arr[i];
if(i>0)
{
cout << " ";
}
}
cout << endl;//换行
//隔位输出数组元素,中间用空格分开
for(int i=0;i<n;i+=2){
cout << arr[i];
if(i<n-1)
{
cout <<" ";
}
}
return 0;
}
代码示例2(容器版本)
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<int> nums;//定义一个整型vector
int n,num;//n代表vector长度
cin >> n;//输入n
//输入n个数字
while(n--)
{
cin >> num;
//使用push_back方法动态添加元素
nums.push_back(num);
}
//倒序输出数组元素,使用size()表示vector大小
for(int i= nums.size() -1; i>=0;i--){
cout <<nums[i];
if(i>0){
cout <<" ";
}
}
cout << endl;
//隔位输出数组元素,使用size()表示vector大小
for(int i=0;i<nums.size();i+=2)
{
cout << nums[i];
if(i<nums.size()-1)
{
cout <<" ";
}
}
return 0;
}