求助

大佬们看一下这个代码为什么每次结果都不一样呢?

第三题。谢谢。

#include <bits/stdc++.h>

using namespace std;
    char n[1001]={0};

struct bign{
    int d[1000];
    int len;
};


bign change(char str[]){
    bign a;
    a.len=strlen(str);
    for (int i=0;i<a.len;i++)
        a.d[i]=str[a.len-i-1]-'0';
    return a;
}


bign divide(bign a,int b,int& r){
    bign c;
    c.len=a.len;
    for (int i=a.len-1;i>=0;i--){
        r=r*10+a.d[i];
        if (r<b) c.d[i]=0;
        else {
            c.d[i]=r/b;
            r%=b;
        }
    }
    while (c.len-1>=1&&c.d[c.len-1]==0){
        c.len--;
    }
    return c;
}


int main(){

    int k,r;
    scanf("%s", n);
    cin>>k;
//     cout<<n<<" "<<k<<endl;
    bign d = change(n);
    bign a=divide(d,k-1,r);
    for (int i=a.len-1;i>=0;i--)
    {
        cout<<a.d[i];
    }
    return 0;
}

全部评论

相关推荐

Lorn的意义:1.你这根本就不会写简历呀,了解太少了 2.你这些项目经历感觉真的没啥亮点啊,描述的不行,重写书写一下让人看到核心,就继续海投 注意七八月份ofer还是比较多的,越往后机会越少,抓住时机,抓紧检查疏漏,加油查看图片
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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