题解 | #数组元素处理#

数组元素处理

https://www.nowcoder.com/practice/bb840c11be674d01b582847a6921d384

#include <iostream>
using namespace std;

void func(int *p, int n);

int main() {
    int arr[6];
    int i = 0;
    while(cin >> arr[i])
    {
        ++i;
    }

    func(arr, 6);

    for(int i = 0; i < 6; ++i)
    {
        cout << arr[i] << " ";
    }

}

void func(int *p, int n)
{
    int *zp = p;
    int *nzp = p + 1;
    while(zp != p + n && nzp != p + n)
    {
        if(*zp != 0)
        {
            ++zp;
            ++nzp;
            continue;
        }
        else
        {
            while(nzp != p + n)
            {
                if(*nzp != 0)
                {
                    int tmp = *zp;
                    *zp = *nzp;
                    *nzp = tmp;

                    ++zp;
                    ++nzp;
                    break;
                }
                ++nzp;
            }
        }
    }
}

全部评论

相关推荐

07-23 12:04
门头沟学院 Java
现在是很缺人吗
码农索隆:缺分母,不缺分子,这样好作为炫耀的资本
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务