gpt4 book ai didi

c - 如何在 C 中使用模数将 Float 转换为 Int?

转载 作者:太空宇宙 更新时间:2023-11-04 05:47:02 24 4
gpt4 key购买 nike

我对 C 中的模数很困惑。我正在编写一个小脚本,允许用户输入他们的两个数字变量,然后他们可以加、减、乘、除(简单)或模数(还没有捕获这一个)。我会做错什么?我收到“二进制 % 的无效操作数”错误,这意味着我需要将其格式化为 int,因为它是一个 float 。但是,使用以下方法执行此操作的最佳方法是什么?任何 C 帮助将不胜感激。

int main (void)
{
float number1, number2, result;
char symbol;

//allow user interaction
printf("Enter your formula: \n");
scanf("%f %c %f", &number1, &symbol, &number2);



switch (symbol) {
case '%':
result = number1 % number2;
printf("Result: %f \n", result);
break;
default:
printf("Operation Error. Program aborted. \n \n");
break;
}

printf("Press any key to continue \n");

getchar();
return 0;
}

我在哪里以及如何转换它?

最佳答案

您可以使用如下语句:

result = (int)number1 % (int)number2;

将您的 float 转换为整数并执行取模运算,但您将失去小数精度。

您还可以包含 math.h 并使用 fmod

result = fmod(number1, number2);

关于c - 如何在 C 中使用模数将 Float 转换为 Int?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1479366/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com