poj1028 程序运行出错,哪位大神帮忙看一下

#include
#include
using namespace std;

string f[101]={"0"};
string b[101]={"0"};

string curr;
int main()
{ string cmd;
curr="http://www.acm.org/";
while(cin>>cmd&&cmd!="QUIT")
{ if(cmd=="BACK")
{ if(b[0]=="0")
cout<<"Ignored"<<endl;
else
{ cout<<b[0]<<endl;

  for(int i=0;f[i]!="0";i++)
   f[i+1]=f[i];
   f[0]=curr;
   curr=b[0]; 
    for(int i=0;b[i]!="0";i++)
   b[i]=b[i+1];
}
    }
        if(cmd=="FORWARD")
  {  if(f[0]=="0")
  cout<<"Ignored"<<endl;
  else
 {      cout<<f[0]<<endl;

  for(int i=0;b[i]!="0";i++)
   b[i+1]=b[i];
   b[0]=curr;
   curr=f[0];
   for(int i=0;f[i]!="0";i++)
   f[i]=f[i+1];
}
    }
    if(cmd=="VISIT")
    {   for(int i=0;b[i]!="0";i++)
   b[i+1]=b[i];
   b[0]=curr;
    for(int i=0;f[i]!="0";i++)
  f[i]="0";
  cin>>curr;
  cout<<curr<<endl;
        }
    }

return 0;
}