70,为啥啊?明明样例对了

P1307 [NOIP2011 普及组] 数字反转

the_air @ 2023-01-10 11:20:23

不多说,直接上代码

#include<bits/stdc++.h>
using namespace std;
int main()
{
    bool sw=false;
    char x[15];
    cin>>x;
    if(x[0]=='-')//判断正负数
    {
        cout<<'-';
        for(int i=strlen(x)-1;i>=1;i--)
            if(sw==true||x[i]!='0')//最高位零判定
            {
                sw==true;
                cout<<x[i];//输出
            }
    }
    else
        for(int i=strlen(x)-1;i>=0;i--)
            if(sw==true||x[i]!='0')
            {
                sw==true;
                cout<<x[i];
            }

    return 0;
}

求dalao帮助


by wssb1919810 @ 2023-01-10 12:48:30

有没有另外一种可能,直接/和%就能转过来呢

#include<bits/stdc++.h>
using namespace std;
int numa,numb;
int main(){
    cin>>numa;
    while(numa!=0){
        numb=numb*10+numa%10;
        numa/=10;
    }  
    cout<<numb;
    return 0;
} 

by the_air @ 2023-01-10 13:46:26

我超,是我想的太复杂了,谢谢大佬


|