C语言里a/m*m和m*a/m有什么区别#includevoid main(){\x05printf("请输入一个正整数");\x05int a,t,m=10,sum=0;\x05scanf("%d",&a);\x05do{\x05\x05t=a-a/m*m;\x05\x05sum=sum+t;\x05\x05m=10*m;\x05}while(t>0);\x05printf("%d",sum);}为什么这样

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/16 21:41:27

C语言里a/m*m和m*a/m有什么区别#includevoid main(){\x05printf("请输入一个正整数");\x05int a,t,m=10,sum=0;\x05scanf("%d",&a);\x05do{\x05\x05t=a-a/m*m;\x05\x05sum=sum+t;\x05\x05m=10*m;\x05}while(t>0);\x05printf("%d",sum);}为什么这样
C语言里a/m*m和m*a/m有什么区别
#include
void main()
{
\x05printf("请输入一个正整数");
\x05int a,t,m=10,sum=0;
\x05scanf("%d",&a);
\x05do{
\x05\x05t=a-a/m*m;
\x05\x05sum=sum+t;
\x05\x05m=10*m;
\x05}while(t>0);
\x05printf("%d",sum);
}
为什么这样程序运行异常
而另一种表达式就可以

C语言里a/m*m和m*a/m有什么区别#includevoid main(){\x05printf("请输入一个正整数");\x05int a,t,m=10,sum=0;\x05scanf("%d",&a);\x05do{\x05\x05t=a-a/m*m;\x05\x05sum=sum+t;\x05\x05m=10*m;\x05}while(t>0);\x05printf("%d",sum);}为什么这样
因为a 和 m 都是int 型 所以 a/m结果也为int型 当a