方法一:
#include<stdio.h>
#include <stdlib.h>
int main(){
int a[5]={8,6,5,4,1},b[5]; //重新建立一个数组
int i;
for(i=0;i<5;i++){
b[i]=a[4-i];
}
printf("原数组为:\n");
for(i=0;i<5;i++){
printf("%d ",a[i]);
}
printf("\n");
printf("逆序排放后为为:\n");
for(i=0;i<5;i++){
printf("%d ",b[i]);
}
printf("\n");
system("pause");
return 0;
}
输出结果为

方法二:
```c
#include<stdio.h>
#include <stdlib.h>
int main(){
int a[5]={8,6,5,4,1};
int i,t;
for(i=0;i<2;i++){ // i<2 因为 5/2=2
t=a[i];
a[i]=a[4-i];
a[4-i]=t;
}
printf("逆序排放后为为:\n");
for(i=0;i<5;i++){
printf("%d ",a[i]);
}
printf("\n");
system("pause");
return 0;
}
输出结果为

本文介绍了使用C语言实现数组逆序的两种方法。第一种方法通过创建一个新数组并从原数组末尾开始复制元素来实现逆序。第二种方法采用原地交换的方式,仅需遍历数组一半长度即可完成逆序,更节省内存。本文适合初学者理解数组操作及算法优化。
2522

被折叠的 条评论
为什么被折叠?



