直接写%65537就是了
但是两个短整型的乘积,需要长整型才能存储,否则会溢出,求余65537是毫无意义的
题目最后已经提示了,可以用加法或者减法代替mod。代码如下:
#include <stdio.h>
int main()
{
short a, b;
int c;
scanf("%d %d", &a, &b); //读入a和b的值
c = (int)a * b; //a和b的乘积可能会超出short类型范围,所以用int类存储结果
while (c >= 65537)
c -= 65537; //左移16位,相当于除以
printf("%d", c);
return 0;
}
如有帮助,望采纳,谢谢。