📜  我们可以在浮点数上使用%运算符吗?

📅  最后修改于: 2021-05-30 13:44:47             🧑  作者: Mango

预测以下程序的输出:

%可以与C++中的浮点数一起使用吗?

#include 
int main()
{
    float f = 9.9f, m = 3.3f;
    float c = f % m;  // LINE 5
    std::cout << c;
    return 0;
}

上面的程序编译失败,编译器在第5行中报告以下错误:
输出:

invalid operands of types 'float' and 'float' 
to binary 'operator%' 

%运算符不能与C&C++中的浮点数一起使用。

Java和C#呢?
在Java和C#中,此行为是不同的。 %运算符可用于这些语言的浮点数。

考虑以下Java程序示例:

class Test
{
    public static void main(String args[])
    {
        float f = 9.9f, m = 3.3f;
        float c = f % m;
        System.out.println(c);
    }
}

输出:

3.2999997

以同样的方式尝试此C#程序。它工作正常:

using System;
class Test
{
    public static void Main()
    {
        float f = 9.9f, m = 3.3f;
        float c = f % m;
        Console.WriteLine(c);
    }
}

输出:

3.3
要从最佳影片策划和实践问题去学习,检查了C++基础课程为基础,以先进的C++和C++ STL课程基础加上STL。要完成从学习语言到DS Algo等的更多准备工作,请参阅“完整面试准备课程”