c中浮点值的mod运算符。这是“显示错误”;“非法使用浮点”; #包括 #包括 void main() { 浮动n,r; printf(“\n输入一个数字”); scanf(“%d”和“&n”); r=n%10; n/=10; printf(“%d%d”,n,r); getch(); }
此代码在编译时显示错误。c中浮点值的mod运算符。这是“显示错误”;“非法使用浮点”; #包括 #包括 void main() { 浮动n,r; printf(“\n输入一个数字”); scanf(“%d”和“&n”); r=n%10; n/=10; printf(“%d%d”,n,r); getch(); },c,C,此代码在编译时显示错误。 我想知道:我们可以对浮点值执行mod操作吗?不,不能对浮点值使用% 改用fmod功能 此处引用: 或fmodf r=fmod(n,10) 要使用此功能,您需要#包括 另外,您应该执行scanf(%f,&n)以读取float #include<stdio.h> #include<conio.h> void main() { float n, r; printf("\n enter a number"); scanf("%d",&
我想知道:我们可以对浮点值执行mod操作吗?不,不能对浮点值使用
%
改用fmod
功能
此处引用:
或fmodf
r=fmod(n,10)
要使用此功能,您需要#包括
另外,您应该执行scanf(%f,&n)
以读取float
#include<stdio.h>
#include<conio.h>
void main()
{
float n, r;
printf("\n enter a number");
scanf("%d",&n);
r=n%10;
n/=10;
printf("%d %d",n, r );
getch();
}
#包括
#包括
int main()
{
浮动n,r;
printf(“\n输入一个数字”);
scanf(“%f”、&n);
r=fmod(n,10.0);
//r=fmodf(n,10.0);坦斯克至丘克斯
n/=10;
printf(“%f%f”,n,r);
}
请阅读scanf
的手册,包括%d
格式说明符的作用,以及使用时需要的参数类型。我们可以对浮点值执行模式操作吗:否。它不应该是mod
运算符而不是“mode”运算符。float n,r代码>-->int n,r代码>“我们可以对浮点值执行mod操作吗?”不完全正确。C具有fmodf()
,这与欧几里德“mod运算”中的正值相同。在Cfmodf()
中,当操作数为负数时,会有一个不同于“mod”的“余数”。您还可以提到@NateEldredge所指的错误吗?@WeatherVane当然fmodf()
对于float
参数更有意义。@chux是这样做的,但在这种情况下,C会隐式地将10转换为10.0,但使用fmod()
,n
从float
转换为double
。然后fmod()
计算double
余数,然后r=
将double
余数转换为float
fmodf()
可能比fmod()
快,并且code避免了float
到double
和double
到float
的两种转换。
#include<stdio.h>
#include<math.h>
int main()
{
float n, r;
printf("\n enter a number");
scanf("%f", &n);
r=fmod(n,10.0);
//r = fmodf(n, 10.0); thansk to chux
n /= 10;
printf("%f %f", n, r );
}