有网友碰到这样的问题“c语言余数运算符的问题”。小编为您整理了以下解决方案,希望对您有帮助:
解决方案1:
在printf和scanf中 %会被解析为转义字符,类比于\,所以如果要输出百分号就要再加一个%
也就是 %% ,但是在常规字符串中就没有影响。
printf("i%f=%d\n", i%f);
这句话的意思是
输出一个 i 然后 将 第二个参数 i%f的结果以%f(浮点形式输出)=%d没有第三个参数,乱码或者0(编译器有关)
所以输出是 i0.00000=乱码 0.000000是因为强转失败
解决方案2:
写成printf("i%%f=%d\n", i%f);
就是再加一个百分号就行。
解决方案3:
求余运算符(%) 两边的运算量必须为整型, 且%后面的运算量不能为0。 例如: 7 % 4 商为1 余数值为3; 7 % 4 余数值为3; 4 % 7 余数值为4 10 % 5 余数值为0