欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

C语言循环技巧:位数统计、正序和逆序输出数字处理(上篇)-2.使用取模运算

最编程 2024-08-11 21:51:24
...

      取模运算和取余运算两个概念有重叠部分但又不完全一致。主要区别在于对负整数进行除法运算时操作不同(取余运算在求商时,向0方向舍入,而取模运算在计算商时,向负无穷方向舍入)。                                          

eg4:计算-7MOD4 (令a=-7,b=4,c为商,r为输出结果)                                                                              

第一步:求整数商c,如进行求模运算c=-2(向负无穷方向舍入),求余c=-1(向0方向舍入);                        

第二步:计算模和余数的公式相同,但因c的值不同,求模时r=1,求余时r=-3。                                                     

      总结:当a与b符号一致时,求模运算和求余运算所得的c的值一致,因此r也相同。当符号不一致时,结果不一样,求模运算结果的符号和b的一致,求余运算结果的符号和a一致。                                                            

利用除法取整的特性,我们可以对数字进行以下操作:                                                                                       

(1)数字取低位                                                                                                                       

 方法:用数字(num)对10进行取模运算(即n%10)                                                                                            

eg5:                         123%10==3                                                                            

(2)保留个位                                                                                                                          

方法:用数字(num)对10进行取模运算,保存在变量x中,接下来继续用num除以10,重复以上两个步骤,直到m%n==0结束(保留个位牵扯到数字位数的变化,因而需要借助除法运算来保留去掉个位后的数字 )。       

eg6: 令num=123,求数字123每个位上的数字                                                                                                                     

第一步:               x=num%10-------->x=3                                                                                         

第二步:          num=num/10----->num=12                                                                                    

第n步:                         m%n==0                                                                             

(由于这一期博客文字叙述内容过多,需要花时间理解,所以第二部分内容将在下一期博客中更新!!!)