取余,符号%,是对两个整数进行除法后取其余数(这里区分小数)eg:7%2=1;40%9=4;121%60=1。
这是我们的取余操作,那么我们知道了取余是怎么回事之后,我们在什么场景会用到取余操作呢?
这里是一个计算时间差=现在的时间-过去时间的编程代码,我们首先创立了两个时间节点的标识符接着用电脑读入输入的数据,接着我们把两个时间节点同一单位转化为分钟并进行相减,在最后输出的部分,我们需要将以分钟为单位的时间差转化为几小时几分钟,这时候我们用到了取余!
举个例子,假如现在的时间差是70分钟,我们要将其转化为1小时10分钟,我们发现70/60取整数部分是1,70%60是10, 于是对小时我们进行了除以60后取整,对分钟我们进行了除以60后取余
为什么是%60呢?其实取余就是把一个整数分成特别的两个整数相加等于这个整数,然后去较小的那个数,比如对于100进制的整数1103,我们利用取整取余可以将其分为11和3,比如进制为60的80分钟,我们利用取整取余可以将其分为1和20,这里仅限于整数
(注意:c语言中规定,%取余不能对浮点型!)(注意:c语言中规定,%取余不能对浮点型!)(注意:c语言中规定,%取余不能对浮点型!)
那么对于小数(浮点型)我们应该怎么去分成上面那种形式呢?
这是一个将输入单位为cm的长度,转化为单位为英尺f和英寸i的长度的编程代码, 我们假设cm=180,经过单位的转化等于70.8661417英寸,对于英尺,我们可以打印整形后进行运算70.8661417/12(取整),对于剩下的英寸,i=70.8661417/12-f*12,取减去英尺后剩下的数,这里注意区分取余,假设结果是70英寸,那么我们可以用取余取整来写,int 英尺=70/12,英尺70%12
上面这个图片的编程是先将cm转化为英尺再来计算,感兴趣的可以用这条路来假设整数进行取余取整。