#include<stdio.h> int a[10][4]={{0},{1},{6,2,4,8},{1,3,9,7},{6,4}, {5},{6},{1,7,9,3},{6,8,4,2},{1,9}}; //规律数组 int main(){ int n; while(scanf("%d",&n)!=EOF){ switch(n%10) { case 0: if(n==0) { printf("1\n"); break;} case 1: case 5: case 6:printf("%d\n",a[n%10][0]);break; //0,1,5,6不管多少次方都是自己本身 case 2: case 3: case 7: case 8:printf("%d\n",a[n%10][n%4]);break; //2,3,7,8有规律 case 4: case 9:printf("%d\n",a[n%10][n%2]);break; } } } //两个数相乘,所得积的个位数=原两个数的个位数相乘所得积的个位数。 //因为一个数的个位数在0~9的范围内,可知它们不停的乘以自身,个位数一定是有循环节的: //例如0永远是0,1永远是1,2的循环节是2,4,8,6,其他数字自己写一下规律 |
Double click to view unformatted code.