从键盘输入长度为8的整型数组的值,然后将其按逆序存放,将逆序前和逆序后的数组输出。

从键盘输入长度为8的整型数组的值,然后将其按逆序存放,将逆序前和逆序后的数组输出。

问题描述:

从键盘输入长度为8的整型数组的值,然后将其按逆序存放,将逆序前和逆序后的数组输出。

 

 

 

#include <stdio.h>
const int n = 8;
int main() {
	int a[n];
	int i = 0;
	for (; i < n; ++i) {
		scanf("%d", a + i);
	}
	printf("正序存放:\n");
	for (i = 0; i < n; ++i) {
		printf("%d ", a[i]);
	}
	printf("\n倒序存放\n");
	for (i = n - 1; i >= 0; --i){
		printf("%d ", a[i]);
	}
	return 0;
}

以上是代码。其实不用去实际存放,直接从开头到结尾,再从结尾返回到开头这样输出一下就行了,空间复杂度是O(1)。如果存放的话空间复杂度就是O(n)了。

哪里不懂私信我。

C和C++完整教程:https://blog.csdn.net/it_xiangqiang/category_10581430.html