#include<iostream>#include"string.h"using namespace std;void convert(char *input,char* output){ char c='\0'; int tag=0; int length=strlen(input); for(int i=0;i<length;i++) { if(input[i]!=c) { output[i]=(input[i]-'a'+1)%26+'a'; tag=1; c=input[i]; } else { if(tag==1) { output[i]=(input[i]-'a'+2)%26+'a'; tag=0; c=input[i]; } else { output[i]=(input[i]-'a'+1)%26+'a'; tag=1; c=input[i];
} } }}void main(){ char input[5]; char output[5]; cout<<"输入字母:"<<endl; cin>>input; convert(input,output); cout<<"输出是:"<<output<<endl;
}
代码如上;为什么输入的时候可以输入多于5个字母;
而且输入比如abcdef的结果是
为什么出现这样的结果,求解释谢谢!