#C03L03P01. C03.L03.数组双指针移动和有序数组的合并.例题1.数组双指针

C03.L03.数组双指针移动和有序数组的合并.例题1.数组双指针

题目描述

数组双指针,通常指利用两个指针,对数组进行操作。常见的双指针,为头尾双指针,如下图所示:

img

通过前后两个指针,对数组进行操作。

例如:

包含n个整数的数组,要求我们将数组翻转过来后,再进行输出。

我们可以使用两个指针,一个在数组开头,一个在数组末尾,每次将指针指向的两个数进行交换,即可得到翻转后的数组。

输入格式

第 1 行 1 个正整数:n,范围在 [1,100]。

第 2 行 n 个整数:每个数范围在 [1,10000]。

输出格式

n 个整数。

样例

4
1 2 3 4
4 3 2 1

程序填空

#include<bits/stdc++.h>
using namespace std;
int n,a[101];
int main()
{
	scanf("%d",&n);
	int i,j;

	for(i=1;i<=n;i++)
		scanf("%d",&a[i]);

	for(i=1,  填空(1) ;i<j; 填空(2) ,j--)
		swap (填空(3) );


	for(i=1;i<=n;i++)
		printf("%d ",a[i]);


	return 0;
}

填空(1): {{ input(1) }}

填空(2): {{ input(2) }}

填空(3): {{ input(3) }}