20行c++代码实现假聊天机器人(慎入:这是假机器人!!!)

497 阅读1分钟

20行c++代码实现假聊天机器人(慎入:这是假机器人!!!)

老规矩,先上效果图
在这里插入图片描述

#include<iostream>
using namespace std;
int main()
{
	while(1)
	{
		string s;
		cout<<"真人:";
		cin>>s;
		if(s.find("吗?")!= string::npos)
		{
			s.replace(s.find("吗?"),3,"!"	);
		}
		else
		{
			s=s+"!"; 
		}
		cout<<"机器人:"<<s<<endl;
	}
}

我们可以趁机学习一下c++的string的用法,这里面有两个用法,分别是find和replace。

s.find(“吗?”)!= string::npos
这是一个在string里面寻找子串,如果没有找到就返回string::npos

s.replace(s.find(“吗?”),3,"!" );
replace是替换,对应的3个参数分别是1子串的位置,2一共替换几个字符,因为中文占用两个字符,所以这里一共有三个字符,3替换后的字符串。

你学会了吗?