当前位置:网站首页>【指针】数组逆序重新存放后并输出

【指针】数组逆序重新存放后并输出

2022-07-06 09:24:00 |光|

要求

编写程序,输入n个整数存入一维数组,再按逆序重新存放后再输出。(用指针实现)

代码

#include<stdio.h>
/* * 该函数用来输入一维整数数组,输入的数据存放在形参a数组中 * 输入的数据以0作为结束标志,0不存入数组也不计入输入数据的总数 * 返回值为输入数据的个数 */
int input(int a[])
{
    
    int n=0;
     int b = 0;
    do
    {
    
        scanf("%d",&b);
        if(b == 0)
        break;
        else
        {
    
            a[n] = b;
            n++;
        }
    }
    while(b != 0);
    return n;

}

/* * 该函数用来实现计算形参数组a的逆序存放 * n为a数组中的整数个数 */
void fun(int a[],int n)
{
    
    int b[n],c = 0;
    for(int i = n-1;i>=0;i--)
    {
    
        b[c] = a[i];
        c++;
    }
    for(int i = 0;i<n;i++)
    {
    
        a[i] = b[i];
    }
}

main函数

int main()
 {
    
    int a[200],n;
    n=input(a);
    fun(a,n);
    for(int i=0;i<n;i++)
        printf("%d ",a[i]);
    return 0;
 } 

测试

测试输入
1 3 5 7 0
输出
7 5 3 1

原网站

版权声明
本文为[|光|]所创,转载请带上原文链接,感谢
https://blog.csdn.net/weixin_62757251/article/details/125074027