读书人

求解析代码功能为求N的N次方的个位数

发布时间: 2012-04-26 14:01:31 作者: rapoo

求解析,代码功能为求N的N次方的个位数。
#include<stdio.h>
int main()
{
int n,t,i,pro;
long m;
scanf("%d",&n);
while(n--)
{
pro=1;
scanf("%ld",&m);
t=(m-1)%4;
m=m%10;
for(i=0;i<=t;i++)
pro*=m;
printf("%d\n",pro%10);
}
return 0;
}

[解决办法]
任意整数的整数次幂在个位上都有一个特色:随着指数的递增,个位上会出现重复,重复的周期分别为1、2、4。

所以,程序里求个位幂只需要计算最多4次乘法。t=(m-1)%4就是起这个作用的。

后面的东西就没啥需要说的了吧?

读书人网 >C语言

热点推荐