2

C++ C 中:输出:“1610612736”

#include <math.h>
#include <stdio.h>

int main(int argc, char** argv)
{
    printf("%d\n", fmodf(5.6f, 6.4f));
    getchar();
}

在 C# 中:输出:“5.6”

using System;

static class Program
{
    public static void Main(string[] args)
    {
        Console.WriteLine(5.6f % 6.4f);
        Console.Read();
    }
}

显然不一样的输出。建议?

4

2 回答 2

5

尝试使用printf("%f\n", fmodf(5.6f, 6.4f))

于 2010-09-08T23:06:07.500 回答
0

用 fprintf() 纠正小数问题

#include <math.h>
#include <stdio.h>
#include <iostream>

int main(int argc, char** argv)
{
    std::cout << fmodf(5.6f, 6.4f) << std::endl;
    getchar();
}

输出 5.6

于 2010-09-08T23:11:07.370 回答