Vigenère密码过不了

在CSDN上看的一篇题解,按照思路来做了
#include
#include
#include
using namespace std;
char k[1010],s[1010];
int len1,len2;
int main()
{
    gets(k);
    gets(s);
    len1=strlen(k);
    len2=strlen(s);
    for(int i=0;iif((k[i]>='a')&&(k[i]<='z'))
            k[i]-=32;
    }
    int j=0;
    for(int i=0;iif(s[i]<='Z')
        {
            s[i]=s[i]-(k[j]-'A');
            j++;
            if(s[i]<'A')
                s[i]='Z'-('A'-s[i])+1;
        }
        else 
        {
            s[i]=s[i]-(k[j]-'A');
            j++;
            if(s[i]<'a')
                s[i]='z'-('a'-s[i])+1;
        }
        if(j>len1-1)
            j=0;
    }
    cout<return 0;
} 

在一本通网站上显示编译错误,软件上可以正常运行
尝试过把j放到循环中清零,检查不出问题
在c++中可以正常运行