Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

为什么我的程序在VC上运行完全正常,到了这里就是runtime-error

Posted by RiverM at 2007-10-07 21:41:11 on Problem 1001
程序如下
#include<stdio.h>
int main()
{
   int n=0,i=0,j=0,bit=5;
   char R[6],res[126];
   int r1[125],r2[125];
   int multiplication(int r1[],int r2[]);
   while(scanf("%s %d",R,&n))
   {   
	   i=5;                   
   while(R[i]=='0')          
	   i--;
   j=5;
   for(i;i>=0;i--)
   {
	   R[j]=R[i];
	   j--;
   }
   for(j;j>=0;j--)
	   R[j]='0';
   while(R[bit] != '.')       
	   bit--;
   for(i=bit;i>0;i--)          
	   R[i]=R[i-1];     
   for(i=124;i>119;i--)
   {
	   r1[i]=r2[i]=R[i-119]-48;
   }
   for(i;i>=0;i--)
   {
	   r1[i]=r2[i]=0;
   }
    bit=n * (5-bit); 
    for(i=0;i<n-1;i++)
	{
		multiplication(r1,r2);     
    }
   for(i=0;i<125-bit;i++)
   {
      res[i]=r1[i]+48;
   }
    if(i!=125)
   res[i]='.';  
   i++;
   for(i;i<126;i++)
        res[i]=r1[i-1]+48;
   i=0;
   while(res[i]=='0')
	   i++;
   for(i;i<126;i++)
      printf("%c",res[i]); 
   printf("\n"); 
   }
   return 0;
}
int multiplication(int r1[],int r2[])
{
	 static int save[125][125];
     int i=0,j=0,k=0,temp=0;
	 for(i=0;i<125;i++)
		 for(j=0;j<125;j++)
			 save[i][j]=0;
     for(i=124;i>=0;i--)
	 {	 
		 k=i;
		 for(j=124;j>=0;j--)
         {
			 temp=save[i][k];
            save[i][k]=(r1[j]*r2[i]+save[i][k]) % 10;
			save[i][k-1]=(r1[j]*r2[i]+temp+save[i][k-1]*10) /10;
			k--; 
		 }
	 }
	 for(j=124;j>0;j--)
	 {
			 r1[j]=0;
	 }
	 for(j=124;j>0;j--)
	 {
		 for(i=0;i<125;i++)
		 {
			 r1[j]+=save[i][j];
		 }
		    r1[j-1]=r1[j]/10;
		 	 r1[j]=r1[j]%10;
	 }
     return 0;
}

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator