输入字符串,由各个单词组成,单词之间由空格隔开。只要将字母个数为奇数的单词反转,输出处理后的字符串。
#include <iostream> #include <string> #include <algorithm> using namespace std; void word_reverse(string &str){ int n=str.size(); if(n%2==1) reverse(str.begin(),str.end()); else return; } int main(){ string new_str; string str; string word=""; getline(cin,str); for(int i=0;i<str.size();i++){ if(str[i]==' ' || i==str.size()-1){ if(str[i]==' '){ word_reverse(word); new_str = new_str+word+" "; word = ""; } else{ word+=str[i]; word_reverse(word); new_str += word; } } else{word+=str[i];}; } cout<<new_str<<endl; }