一、题目
二、解题思路
- 判断是否压 ong 韵:字符串查找诗句的逗号和句号 pos=str.find(',') pos2=str.find('.') ,判断逗号和句号之前的三个字母是否是 ong ;
- 如果压 ong 韵,将最后三个字修改:倒序遍历字符串,当空格数目为 3 时,表示将此时下标之后的修改为 qiao ben zhong. ,之前的正常输出(此时的下标是空格,也要正常输出)。
三、代码
#include<iostream>
using namespace std;
#include<string>
int main()
{
int n;
cin>>n;
getchar();
while(n--)
{
string str;
getline(cin,str);
int pos=str.find(',');
int pos2=str.find('.');
if(str[pos-3]=='o' && str[pos-2]=='n' && str[pos-1]=='g' && str[pos2-3]=='o' && str[pos2-2]=='n' && str[pos2-1]=='g')
{
int cot=0,pos3;
for(int i=str.length()-1;i>=0;i--)
{
if(str[i]==' ')
{
cot++;
}
if(cot==3)
{
pos3=i;
break;
}
}
for(int i=0;i<=pos3;i++)
{
cout<<str[i];
}
cout<<"qiao ben zhong."<<endl;
}
else
{
cout<<"Skipped"<<endl;
}
}
}
四、总结
判断是否压 ong 韵,如果压 ong 韵修改输出。