將n個數按輸入時順序的逆序排列,用函數實現


將n個數按輸入時順序的逆序排列,用函數實現

解題思路: 定義兩個指針,一個指向數組頭部,一個指向數組尾部,頭部每次+1,尾部每次-1;則在頭部小於尾部的情況下進行數據交換即可。

答案:

#include<stdio.h>
#include<math.h>

void reorder(int *arry, int n)
{
	int *start = arry;
	int *end = arry + n - 1;
	for (; start < end; start++, end--) {
		int tmp = *start;
		*start = *end;
		*end = tmp;
	}
	return;
}

int main()
{
	int arry[10];
	printf("Please enter ten numbers:");
	for (int i = 0; i < 10; i++) {
		scanf_s("%d", &arry[i]);
	}
	reorder(arry, 10);
	printf("\n");
	for (int i = 0; i < 10; i++) {
		printf("%d ", arry[i]);
	}
	printf("\n");
	system("pause");
	return 0;
}

將n個數按輸入時順序的逆序排列,用函數實現


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM