怎样把小数点后面的数字变成整数输出

整小互换

题目背景

输入输出

题目描述

给定一个用小数来表示的正浮点数,整数部分与小数部分都存在,且所有位都不为$0$。

要求交换它的整数部分与小数部分,然后输出。

输入格式

只有一行,包含一个浮点数。

输出格式

只有一行,包含一个浮点数。

样例 #1

样例输入 #1

123.45

样例输出 #1

45.123

提示

对于100%的数据,$1 ≤ x ≤ 10^4$,小数位数不超过$4$。

主要是如何将小数点后面的数字变成整数呢?因为并不知道小数点的位数啊。我想着用POW 函数,但是好像也不行。是用Char 语句吗? 求具体方法。
另,我是小学4年级的初学者,刚开始学习,太复杂的语句我不懂奥。

这估计得用字符串接收,然后逐个字符分析处理,不能用浮点数接收

#include <stdio.h>
void main()
{
    char s[100];
    gets(s);
    int a=0,b=0,i=0,flag = 0;
    while(s[i] != '\0')
    {
        if(s[i] != '.')
        {
            if(flag == 0)
                a = a*10 + s[i]-'0';
            else
                b = b*10 + s[i] - '0';
            
        }
        else 
            flag = 1;
        i++;
    }
    printf("%d.%d",b,a);
    return 0;
}

img

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632