1257 - C语言10.27
将n个整数按输入时的顺序逆序排列,用函数实现。
Input
第一行有一个整数n,表示下一行有多少个整数,保证n不超过1000。第二行有n个用空格隔开的整数。
Output
输出按逆序排列的n个整数,每个整数后输出一个空格。
请注意行尾输出换行。
Examples
Input
5 1 2 3 5 8
Output
8 5 3 2 1
Solution C
#include<stdio.h> int ret(int a[],int n) { int i; int t; for(i=0;i<(n/2);i++) { t=a[n-i-1]; a[n-i-1]=a[i]; a[i]=t; } return n; }; int main() { int ret(int a[],int n); int m,b[1000],i; scanf("%d",&m); for(i=0;i<m;i++) scanf("%d",&b[i]); ret(b,m); for(i=0;i<m;i++) printf("%d ",b[i]); printf("\n"); return 0; }
Solution C++
#include <stdio.h> int main() { void reverse(int array[], int n); int n, i, array[1000]; scanf("%d", &n); for (i = 0;i < n;i++) scanf("%d", &array[i]); reverse(array, n); for (i = 0;i < n;i++) printf("%d ", array[i]); printf("\n"); return 0; } /* 反转数组的函数 */ void reverse(int array[], int n) { int i, temp; for (i = 0;i + i < n;i++) { temp = array[i]; array[i] = array[n - 1 - i]; array[n - 1 - i] = temp; } }