|
发表于 2014-3-28 19:52:42
|
显示全部楼层
本帖最后由 oggplay 于 2014-3-28 19:58 编辑
wiliam 发表于 2014-3-28 19:25
那请问下 如果要算1024次方该如何去改?? 大神???
- //结果保存到文件里1.txt。
- //m表示底数 t输入几次方
- #include <stdio.h>
- #define M 10000
- int main()
- {
- unsigned a[M];
- unsigned long k;
- int i,j,m,t,n=1,r;
- FILE *fp;
- a[0]=1;
- printf("\n输入m and t(空格隔开: m^t = ?):");
- scanf("%d %d",&m,&t);
- for(j=0; j<t; j++)
- {
- r=0;
- for(i=0; i<n; i++)
- {
- k=a[i]*m+r;
- a[i]=k%10000;
- r=k/10000;
- }
- while(r>0)
- {
- a[n++]=r%10000;
- r/=10000;
- }
- }
- fp=fopen("1.txt","w");
- printf("\n %d^%d =",m,t);
-
- for(i=n-1; i>=0; i--)
- { if(a[i]<1000&&a[i]>=100&&i!=n-1) fprintf(fp,"%c",'0');
- else if(a[i]<100&&a[i]>=10&&i!=n-1) fprintf(fp,"%s","00");
- else if(a[i]<10&&i!=n-1) fprintf(fp,"%s","000");
- fprintf(fp,"%d",a[i]);
- }
- close(fp);
- printf("\n");
- return 0;
- }
复制代码 |
|