自己试着找规律。
#include<string.h>
#include<stdio.h>
int main()
{
int n,i;
while(scanf("%d",&n)==1)
{
int s=2,m=1;
if(n%2==0||n==1)
{
printf("2^? mod %d = 1\n",n);
continue;
}
for(i=1;;i++)//
{
s*=2;
m++;
if(s==n+1)
break;
if(s>=n)
s%=n;
}
printf("2^%d mod %d = 1\n",m,n);
}
return 0;
}