为什么非要用字符串去做,我有点没懂...

P5705 【深基2.例7】数字反转

仙云腺 @ 2020-06-09 18:12:18

我的做法是如图,我自己用了几个数字测出来没毛病呀,看了看题解都是用字符串做的,我能够理解字符串的做法,然后有大佬说“用%d不行,是因为输入没有空格”,我就没理解到了...

#include<stdio.h>
int main()
{
    double n,x;
    int i,t;
    scanf("%lf",&n); 
    x=0;
    n*=10;
    for(i=0;i<4;i++)
    {
        t=(int)n%10;
        x=x*10+t;
        n/=10;
    }
    x/=10;
    printf("%.1f",x);
    return 0;
}

by Mine_King @ 2020-06-09 18:15:48

你那个大佬说错了(确信


by andyli @ 2020-06-09 18:17:09

@仙云腺

x/=10;
printf("%.1f",x);

改为

x/=1000;
printf("%.3f",x);

by iMya_nlgau @ 2020-06-09 18:19:28

应该 /1000 不是/10


by 仙云腺 @ 2020-06-09 20:05:09

@Mine_King 【哭笑】好的吧


by 仙云腺 @ 2020-06-09 20:05:38

@andyli 谢谢,原来是我自己不细心


by 仙云腺 @ 2020-06-09 20:06:03

@Sapphire6575737973 Than~ks!


by 2468xiaomei @ 2021-12-18 17:57:30

有没有人可以帮我讲一下这道题的解题思路,我是真的想不明白,我是刚入门的菜鸟求大佬帮忙。


|