c语⾔float可以取余吗,C语⾔fmod()函数:对浮点数取模
(求余)
头⽂件:#include
fmod() ⽤来对浮点数进⾏取模(求余),其原型为:
double fmod (double x);
设返回值为 ret,那么 x = n * y + ret,其中 n 是整数,ret 和 x 有相同的符号,⽽且 ret 的绝对值⼩于 y 的绝对值。如果 x = 0,那么ret = NaN。
fmod 函数计算 x 除以 y 的 f 浮点余数,这样 x = i*y + f,其中 i 是整数,f 和 x 有相同的符号,⽽且 f 的绝对值⼩于 y 的绝对值。
fmod()与求模运算符%的对⽐
1) % 运算符
% 只⽤于整型的计算,后⼀个数不能是0,参与运算的数据可正可负。
对于x%y ,计算之后结果的正负与 x 的符号相同,如果前者是较⼩的数,后者是较⼤的数,那么,结果直接为较⼩的数。例如:
10%3=1
3%10=3
10%-3=1
-3%10=-3
-10%-3=-1
-3%-10=-3
3%13=3
0%3=0
0%-3=0
3%0  (×)Error!
-3%0  (×)Error!
10.0%3.0 (×)Error!  // 浮点型不能进⾏模运算
2) fmod()函数
fmod()函数可以对浮点型数据进⾏取模运算,后⼀个数可为0,这时函数返回NaN。
计算后结果的符号与前者(x)相同,如果前者是较⼩的数,后者是较⼤的数,那么结果直接为较⼩的数。
举例如下:
float x=10.0;
float y=-3.0;
float z=3.0;
result=fmod(x,z);
printf("10.0%%3.0= %f/n",result); //1.0
result=fmod(z,x);
printf("3.0%%10.0= %f/n",result); //3.0
result=fmod(x,y);
printf("10.0%%-3.0= %f/n",result); //1.0
result=fmod(y,x);
printf("-3.0%%10.0= %f/n",result); //-3.0
python菜鸟教程文档result=fmod(0,z);
printf("0.0%%3.0= %f/n",result); //0.0
result=fmod(0,y);
printf("0.0%%-3.0= %f/n",result); //0.0
result=fmod(3,13);
printf("3%%-13= %f/n",result); //3
result=fmod(10.1,3.1);
printf("10.1%%3.1= %f/n",result); //0.8
result=fmod(10.9,3.9);
printf("10.9%%3.9= %f/n",result); //3.1
【实例】代码如下。
#include
#include
int main ()
{
printf ( "fmod of 5.3 / 2 is %f\n", fmod (5.3,2) );
printf ( "fmod of 18.5 / 4.2 is %f\n", fmod (18.5,4.2) );
return 0;
}
输出结果:
fmod of 5.3 / 2 is 1.300000
fmod of 18.5 / 4.2 is 1.700000
fmod()函数 (对浮点数取模)
头⽂件:#include fmod() ⽤来对浮点数进⾏取模(求余),其原型为:    double fmod (double x); 设返回值为 ret,那么 x = ... CodeForces 404 Marathon ( 浮点数取模 -- 模拟 )
B. Marathon time limit per test 1 second memory limit per test 256 megabytes input standard input ou ...
doT.js实现混合布局,判断,数组,函数使⽤,取模,数组嵌套
doT.js实现混合布局 数据结构 { "status": "1", "msg": "获取成功", "info ...
题解报告:hdu 1212 Big Number(⼤数取模+同余定理)
【转】C/C++求模求余运算符——2013-08-20
C语⾔:正负数之间取模运算(转载)
如果 % 两边的操作数都为正数,则结果为正数或零:如果 % 两边的操作数都是负数,则结果为负数或零.C99 以前,并没有规定如果操作数中有⼀⽅为负数,模除的结果会是什么.C99 规定,如果 % 左边的 ...
fmod函数和modf函数
最近从博客上看到了⼀个fmod函数,结果⼜蹦出来⼀个modf函数 fmod函数: 头⽂件:#include C库函数... fmod()⽤来对浮点数进⾏取模(求余),原型为 ...
fmod()函数和modf()函数
最近从博客上看到了⼀个fmod函数,结果⼜蹦出来⼀个modf函数 fmod()函数: 头⽂件:#include C库函数... fmod()⽤来对浮点数进⾏取模(求余),原 ...
【转】C语⾔快速幂取模算法⼩结
随机推荐
Git代码管理⼯具
Git代码管理⼯具 Git 是分布式的源代码管理⼯具,这点区别于svn -让源代码可以被追溯,主要是记录了每次的更新了什么,如果新版本不想⽤,那么则可以退回之前的版本 -Git 是Linux之⽗当年为 ...
Sublime 将 Tab 转为空格
最近在使⽤ vue-cli 搭建项⽬,但每次⽤ Hbuilder 编写 vue ⽂件的时候,如果存在
Javascript 正则表达式笔记
\d 元字符 + 量词 \w 常⽤的字符a-zA-Z0-9 .除回车之外的字符 ?0-1个字符 量词 只有前⾯是元字符,才变现量词 * 0-n 量词 /^\d+$/ 以字符开头,义字符结尾 [0-9] ...
kaggle之⼈脸特征识别
Facial_Keypoints_Detection github code facial-keypoints-detection, 这是⼀个⼈脸识别任务,任务是
识别⼈脸图⽚中的眼睛.⿐⼦.嘴的位置. ...
Bootstrap框架菜鸟⼊门教程
Bootstrap菜鸟⼊门教程 Bootstrap简介 Bootstrap,来⾃ Twitter,是⽬前最受欢迎的前端框架.Bootstrap 是基于
HTML.CSS.JAVASCRIPT 的,它简 ...
⼩程序:最难点For的wx:key
3D打印GCODE⽂件学习(⼀)
我家有⼀个天威的⼊门级的3D打印机.它有⼀个配套的软件叫“Rrint-RiteCoLiDo Repetier-Host V1.5.5”,⽤来连接.控制打印机.同时它可以加载各种切⽚软件,对各种3D模型 ...
读取磁盘:LBA⽅式
LBA简介 磁盘读取发展 IO操作读取硬盘的三种⽅式: chs⽅式 :⼩于8G (8064MB) LBA28⽅式:⼩于137GB LBA48⽅式:⼩于
144,000,000 GB LBA⽅式访问使⽤了 ...
python 爬取全量百度POI
在⽹上了很多关于爬取百度POI的⽂章,但是对“全量”的做法并没有得到最终的解决⽅案,⾃⼰写了⼀个,但还是不能实现全量POI抓取,能够达到⾄少50%的信息抓取.注意:这⾥所指“全量”是能够达到100% ...
systemtap 安装 总结