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 |
你这程序能过sample中的最后一个数据吗In Reply To:呜呜……好郁闷啊,做了一天了,到底那里错了?那位大侠给看看啊,谢谢! Posted by:myi_i at 2004-10-23 15:28:58 > #include"stdio.h" > #include"string.h" > #define M 200 > main() > { > char *a,*b,*c,*temp; > char one[M],two[M],three[M],input[6],s[6]; > int i,j,k,n,point,alen,blen,clen,sum,mul,carry=0,flag; > > while (scanf("%s %d",s,&n)!=EOF) > { > > a=one; > b=two; > c=three; > memset(one,0,M); > memset(two,0,M); > memset(three,0,M); > > for(i=5;i>=0;i--) > {input[i]=s[5-i];} > > point=-1; > alen=6; > for(i=0,j=0;i<6;i++) > { > if(input[i]!='.') > {a[j]=input[i];j++;} > else > {point=n*i;alen--;} > } > for(i=0;i<alen;i++) > {a[i]-=48;} > memcpy(two,one,6); > blen=alen; > > > //开始计算 > for(k=0;k<n-1;k++) > { > clen=alen+blen-1; > carry=0; > > //字符串乘法c=a×b > for(i=0;i<clen;i++) > { > sum=carry; > carry=0; > > for(j=0;j<blen;j++) > { > if(i-j>=0 && i-j<alen) > { > mul=a[i-j]*b[j]; > carry+=mul/10; > sum+=mul%10; > } > } > carry+=sum/10; > c[i]=(char)sum%10; > } > if(carry) > {clen++;c[clen-1]=(char)carry;} > //字符串乘法结束 > > temp=a;a=c;c=temp; > alen=clen; > } > > //输出 > flag=0; > for(i=0;i<blen;i++) > if(b[i]!=0) > flag=1; > > if(n==0 && flag==1) > printf("1"); > else > > if(point<0) > { > for(i=alen-1;i>=0;i--) > {printf("%c",a[i]+48);} > } > else > { > k=0; > while(a[k]==0 && k<alen) > k++; > > j=alen-1; > while(a[j]==0 && j>=0) > j--; > > if(j<point) > { > if(k!=alen) > { > printf("."); > for(i=point-1;i>=k;i--) > {printf("%c",a[i]+48);} > } > else > printf("%c",48); > } > > else if(j!=point) > { > if(k<point) > { > for(i=j;i>=k;i--) > { > printf("%c",a[i]+48); > if(i==point) > printf("."); > } > } > else > { > for(i=j;i>=point;i--) > {printf("%c",a[i]+48);} > } > } > else > { > for(i=j;i>=k;i--) > {printf("%c",a[i]+48);} > } > } > printf("\n"); > > } > } Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator