在win7下测试老是不对,后来注意到,win下汉字占2字节,ubuntu是3字节。
#include <stdio.h>
#include <string.h>
char str[300], sam[] = "你我";
int main(){
int len, i;
while(scanf("%s", str)){
len = strlen(str);
if(len == 1 && str[0] == '0')
break;
for(i = 0; i != len; ++i)
if(str[i] == sam[0] && str[i+ 1] == sam[1] && str[i + 2] == sam[2])
str[i] = sam[3], str[i + 1] = sam[4], str[i + 2] = sam[5], i += 2;
else if(str[i] == sam[3] && str[i+ 1] == sam[4] && str[i + 2] == sam[5])
str[i] = sam[0], str[i + 1] = sam[1], str[i + 2] = sam[2], i += 2;
puts(str);
}
return 0;
}