当前编程题:实验二 进制转换问题(16级) ---计算2的N次方 |
8. |
问题描述
任意给定一个正整数N(N<=100),计算2的N次方的值。
输入形式
输入只有一个正整数N。
输出形式
输出2的N次方的值。
样例输入
50
样例输出
1125899906842624
#include<stdio.h> #include<math.h> int main() { char bb[500]; int aa[500]={0},num=1,i,j,n; aa[0]=1; scanf("%d",&n); for(i=1;i<=n;i++) { for(j=0;j<num;j++) { aa[j]=aa[j]*2; } for(j=0;j<num;j++) { if(aa[j]>=10) { aa[j+1]=aa[j]/10+aa[j+1]; aa[j]=aa[j]%10; } } if(aa[j]>0) { num++; } } for(i=0;i<num;i++) { bb[i]=aa[num-1-i]+'0'; } bb[i]='\0'; puts(bb); return 0; } |