一开始使用三目运算符处理循环的问题,然后发现结果始终不对
if(out[i]<='z'&&out[i]>='a')//小写 out[i]=out[i]-key[j]+((out[i]-key[j])<'a')?26:0;
后面用if替换三目运算符,然后就可以了
if(out[i]<='z'&&out[i]>='a')//小写 { if((out[i]-key[i])<'a')out[i]+=26; out[i]=out[i]-key[i]; }
这里是三目运算符使用左值不对吗?