在家写一下玩的!
看到论坛有人问这个题!我自己写着玩的!不知道写对了不!
程序代码:/* Note:Your choice is C IDE */
//2的n次方 n的范围是100~200之间.
#include "stdio.h"
#include "string.h"
int wei[200]={0};
int wei1[200];
int iPandan(int n)
{
for(;n<=200;n++)
if(wei[n]!=0)
return 1;
return 0;
}
void main()
{
int n;
int n1=0;
int n2=0;
int n3;
int len=0;
printf("请输入n的大小");
wei[0]=2;
scanf("%d",&n);
for(n1=1;n1<n;n1++)
{for(n2=0;wei[n2]!=0||wei[n2]==0&&iPandan(n2+1);n2++)
wei[n2]=2*wei[n2];
n2=0;
while(wei[n2]!=0)
{if(wei[n2]/10>=1)
{wei[n2+1]+=1;
}
wei[n2]=wei[n2]%10;
n2++;
}
}
n2=0;
while(wei[n2]!=0||(iPandan(n2+1)&&wei[n2]==0))
{
n2++;
}
len=n2-1;
for(n3=len;n3>=0;n3--)
{wei1[len-n3]=wei[n3];
}
for(n3=0;n3<=len;n3++)
printf("%d",wei1[n3]);
printf("\n");
memset(wei,0,sizeof(wei));
}
