1、C语言中,%符号就是取余数运算,也就是模运算(mod)。
Mod的含义为求余。模运算在数论和程序设计中都有着广泛的应用,从奇偶数的判别到素数的判别,从模幂运算到最大公约数的求法。
2、设a,b是两个整数,a%b的结果就就是a÷b得到的余数
例如:5%3=2 (商1余2) 9%4=1 (商2余1) 3%7=3 (商0余3)
楼主
你的a,b 都定义成整型int了,所以a/b的值是整型的,你的Printf语句用%.2f就不对了,解决方法如楼上的,或者如下
printf("shang=%.2f\nyu=%d\n",(float)a/b,a%b);
#include
int main()
{
int a=40,b=9;
double quotient = a/b;
int remainder = a%b;
printf("shang=%.2f\nyu=%d\n",quotient,remainder);
return 0;
}
你把"shang=%.2f"中"%.2f"改为"%d"就能运行成功,我亲自测试过。
你把那个a/b改成a*1.0/b就好了 要不然无法输出的,vc6会报运行时错误,连结果都看不到
08vino 回答的正确
C语言里对于有一些符号是不能直接输出的,因为被C语言占用了。所以有一些符号是需要特殊的方式才能输出的。比如你说的%号,%号在C语言里是求余数的符号,如果需要输出%的话,你需要连续写2个%才能输出。如:printf("x%%y=%f\n",e);