c语言编程,讲将一个数组的值按逆序重新存放。如原来5 3 2 6 9,改为9 6 2 3 5

如题,多谢大神们了

#include "stdio.h"

int main()

{

       int a[10]={0};

       int i;

       int b[10]={0};

       printf("请输入10个整数:");

       for(i=0;i<10;i++)

          scanf("%d",&a[i]);

       for(i=0;i<10;i++)

           b[i]=a[9-i];//倒序存到b数组中

       for(i=0;i<10;i++)

           a[i]=b[i];   //再存回原来的数组,则原来数组值就倒序了

       printf("输入的值倒序存放后:");

       for(i=0;i<10;i++)

          printf("%d ",a[i]);

       printf("\n");

 

 

}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-27
int reverse( int* array, int length )
{
int i = 0;
int val = 0;
if( !array || length<=0 ){
return 0;
}
for( i=0; i<length/2; i++ ){
val = array[i];
array[i] = array[length-i-1];
array[length-i-1]=val;
}
return 1;
}

第2个回答  2013-04-27
#include <stdio.h>
int main()
{
int n,a[50],i,t;
printf("输入个数(<50):");
scanf("%d",&n);
printf("输入数据:");
for(i=0;i<n;i++)
scanf("%d",&a[i]);
for(i=0;i<n/2;i++)
{
t=a[i];
a[i]=a[n-i-1];
a[n-i-1]=t;
}
for(i=0;i<n;i++)
printf("%5d",a[i]);
printf("\n");
return 0;
}
第3个回答  2013-04-27
#include "stdio.h"
void main(void){
int i,j,a[]={5,3,2,6,9};
for(i=0;i<2;i++){
j=a[i];
a[i]=a[5-i];
a[5-i]=j;
}
for(i=0;i<5;i++)
printf("%d ",a[i]);
printf("\n");
}
第4个回答  2013-04-27
#include<stdio.h>
void reverse(int a[],int n)
{
int i;
int temp;
for(i=0;i<n/2;i++)
{
temp = a[i];
a[i] = a[n-i-1];
a[n-1-i]=temp;
}
}
int main()
{
int a[5]={5,3,2,6,9};
reverse(a,5);
int i;
for(i=0;i<5;i++)
{
printf("%d ",a[i]);
}
getchar();
return 0;
}
相似回答