解析:很简单的一题,一开始想的复杂了。其实,没有必要再原字符串上修改,跟没必要分解字符串,只要按想要的方式逐一输出即可。
没有考察算法效率,没有必要考虑时间复杂度。
代码:
1 #include <iostream> 2 using namespace std; 3 int main() 4 { 5 char s[10000];//保证充分的空间 6 int i,count=1; 7 while(cin.getline(s,10000)){ 8 //此时的s代表字符串的首地址 9 //先修改字符串 10 for(i=0;s[i];i++){ 11 if(s[i]=='\"'){ //注意是转意字符 12 if(count%2)//是奇数 13 cout<<"``"; 14 else 15 cout<<"'\'"; 16 count++; 17 } 18 else 19 cout<<s[i]; 20 } 21 cout<<'\n'; 22 } 23 return 0; 24 }