
本文共 1120 字,大约阅读时间需要 3 分钟。
如何优化并修复这个C++代码
要优化并修复这个C++代码,我们需要确保代码能够正确读取输入、判断诗句是否符合“ong”韵,并对符合条件的句子进行修改。以下是优化后的代码:
#include
using namespace std;
int main() { int n; cin >> n; getchar(); // 读取并跳过可能的空行 string s; for (int i = 0; i < n; ++i) { getline(cin, s); size_t comma_pos = s.find(','); string first_part = s.substr(0, comma_pos); string second_part = s.substr(comma_pos + 1); if (first_part != "ong" || second_part != "ong") { cout << s << " Skipped" << endl; continue; } // 替换韵脚 if (s.back() == ' ') { size_t last_non_space = s.find_last_not_of(' '); s = s.substr(0, last_non_space + 1) + " qiao ben zhong." + s.substr(last_non_space + 1); } else { s = s + " qiao ben zhong."; } cout << s << endl; } return 0; }
代码说明
n
,然后读取每行诗句。find
函数查找逗号,分割上下两句。代码优化要点
if
判断,减少代码嵌套。运行结果示例
输入:
xun zhang zhai ju lao diao chong, xiao yue dang lian gua yu gong
输出:
xun zhang zhai ju lao diao chong, xiao yue dang lian qiao ben zhong
总结
经过优化后的代码能够更准确地读取输入、判断韵脚并进行替换,同时代码结构更清晰,逻辑更简洁。
发表评论
最新留言
关于作者
