c语言中,写一个函数,把数组中的元素反转输出

如题所述

反转输出是比如a[5]={0,1,2,3,4}输出是a[5]={4,3,2,1,0}吗?如果是我理解的这样,那看下面吧

#include <stdio.h>
int main()
{
int a[6]={0,1,2,3,4,5};
int i,n,temp;
n=6;//数组元素个数
for(i=0;i<n/2;i++)
{
temp=a[i];
a[i]=a[n-1-i];
a[n-1-i]=temp;
}
for(i=0;i<n;i++)
 printf("%d ",a[i]);
return 0;
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-04-05
void f(int *p,int n){//n是指针p指向的数组长度
    for(n--;n>=0;printf("%d ",p[n--]));
}

第2个回答  2018-07-05
#include <stdio.h>
#define N 4

int main(void)
{
      int a[N] = {1,3,5,7};
      int i;
      
      for(i=N-1; i>=0; i--){  //把条件颠倒一下,然后让i--.
          printf("%d ", a[i]);
      }
      putchar(10);  //在这一层换行.
      
      return 0;
}

//这样不是更简单???????????????

第3个回答  2018-04-05
用指针的代码如下:
#include<stdio.h>

main()
{
int a[5],i,*p;
p=&a[4];
printf("please input:\n");
for(i=0;i<5;i++)
scanf("%5d",&a[i]);
printf("the result is:");
for(i=0;i<5;i++)
prinf("%–5d",*(p–i));
}
第4个回答  2016-03-10
int n/*数组大小*/,a[n];'
main()
{
scanf("%d",&n);
for (int i=0;i<n;i++)
scanf("%d",a[i]);
for (int i=n-1;i>=0;i--)
printf("%d",a[i]);
}
//这是标程,具体问题具体写法,有什么问题可以追问
相似回答