C 题目:将一个数组逆序输出。

来源:百度知道 编辑:UC知道 时间:2024/06/03 19:46:28
#include <stdio.h>
#define N 5
void main()
{
int a[N]={9,6,5,4,1},i,temp;
printf("\n original array: \n");
for(i=0;i<5;i++)
printf("%4d",a[i]);
for(i=0;i<5;i++)
{
temp=a[i];
a[i]=a[N-i-1];
a[N-i-1]=temp;
}
printf("\n sorted array: \n");
for(i=0;i<5;i++)
printf("%4d",a[i]);
printf("\n");

}
怎么编译的时候 就是不行呢~

for(i=0;i<5;i++) //这里改成i<2 1和9换 4和6换就行了 只要两次
如果是5的话 9又和1换 6又和4换 它又转回去了

这样就行了吧? 不用那么麻烦吧
#include <stdio.h>
#define N 5
void main()
{
int a[N]={9,6,5,4,1},i,temp;
printf("\n original array: \n");
for(i=0;i<5;i++)
printf("%4d",a[i]);

printf("\n sorted array: \n");
for(i=4;i>=0;i--)
printf("%4d",a[i]);
printf("\n");

}

对啊 说的没错~~