疑似数据溢出问题
#include<stdio.h>void main()
{
long long i,x,y;
long long last=1; /*变量last保存求X的Y次方过程中的部分乘积的后6位*/
printf("Input X:");
scanf("%ld**%ld",&x);
for(i=1;i<=x;i++) /*X自乘Y次*/
last=last*x%1000000;/*将last乘X后对1000000取模,即求积的后6位*/
printf("%ld\n",last);
printf("The last 6 digits of %ld** is:%d\\n",x,last%1000000); /*打印结果*/
}
当少个0是可以求末尾4位,多个0就为负的了,这是咋回事啊?(如:x=109376)