Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
为什么还是错的呢?(附程序如下)(help!!!!!!!!)#include<stdio.h> #include<math.h> int fun(int a,int k,int n) { long temp1,temp2; int b[150]={0}; int i,j; k=k*n; b[149]=1; for(i=0;i<n;i++) { temp2=0; for(j=149;j>=0;j--) { temp1=b[j]*a+temp2; b[j]=temp1%10; temp2=(int)(temp1/10); } } i=0; while(b[i]==0&&i<=149-k) i++; while(i<=149-k) printf("%d",b[i++]); if(k==0) {printf("\n");return 1;} printf("."); while(i<=149) printf("%d",b[i++]); printf("\n"); return 1; } int main() { int n,i,k,j; char a[10],ab[10]; int b; loop: while(1) { for(i=0;i<9;i++) { a[i]='\0'; ab[i]='\0'; } gets(ab);k=0;n=0; for(i=0;i<6;i++) { if(ab[i]!=' ') a[k++]=ab[i]; } a[k]='\0'; if(ab[7]!=' ')n=ab[7]-'0'; if(ab[8]!=' '&&ab[8]!='\0')n=n*10+ab[8]-'0'; b=0;k=0;i=0; for(i=9;i>-1;i--) { if(a[i]=='\0')continue; if(a[i]=='0') a[i]='\0'; if(a[i]>0) break; } for(k=0;k<i;k++) if(a[k]=='.') break; k=i-k; for(j=0;j<=i;j++) if(a[j]!='.') b=b*10+a[j]-'0'; if(b==0) { printf("0\n"); goto loop; } fun(b,k,n); } return 1; } Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator