| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 579 人关注过本帖
标题:求大神~~十分感谢
只看楼主 加入收藏
ppppoi
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2015-8-14
结帖率:0
收藏
已结贴  问题点数:20 回复次数:3 
求大神~~十分感谢
这个聊天机器人为什么回答总是乱码
# include <iostream>
# include <windows.h>
# include <stdlib.h>
using namespace std;
 # define MAXSTR 200
# define REBOT "小C说: "
# define YOUR "您 说: "
# define EXIT "-e\n"
# define NOREPLY "我不知道你说什么呢!\n"

char * GetRebot(char * str); //处理接收的对话内容,返回机器人回复内容
void DelHr(char * str); //删除获取到的字符串中的换行
void RobotSay(char * str); //机器人回复

int main()
{
char str[1024];
cout<<"**************************聊天机器人****************************"<<endl;
cout<<"HI,我是聊天机器人小C,很高心和您认识^ ^ 退出聊天请输入-e\n"<<endl;

do
{
cout<<"YOUR"<<endl;
cin>>string;
cout<<"Robet"<<endl;

if (str[0] != '-' && str[1] != 'e' )
{
RobotSay(GetRebot(str));
cout<<endl;
}else{
cout<<"和您聊天真实愉快,欢迎下次再来和我聊天"<<endl;
}
}while(str[0] != '-' && str[1] != 'e' );

return 0;
}

char * GetRebot(char * str)
{
static char keywords[500];
char reply[500];
int i = 0;
FILE * fp;
if( (fp = fopen("C:\\reply","r")) == NULL)
{
cout<<"缺少核心文件!!"<<endl;
exit(-1);
}
while ( !feof(fp) ) //获取关键字
{
i++;
fgets(keywords,500,fp);
DelHr(keywords);

if( i % 2 != 0)
{
if( strstr(str,keywords) != 0 )
{
fgets(reply,500,fp);
return reply;
}
}
}

fclose(fp);
return NOREPLY;
}

void DelHr(char * str)
{
int i,j;

for(i=0; str[i] != '\0'; i++)
{
if(str[i] == '\n')
{
for(j=i; str[j] != '\0'; j++)
{
str[j] = str[j+1];
}
}
}
}

void RobotSay(char * str)
{
int i; for(i=0; str[i] != '\0'; i++)
{
Sleep(80);

cout<<str[i]);
}
}
搜索更多相关主题的帖子: include 机器人 字符串 
2015-08-14 22:59
yangfrancis
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:141
帖 子:1510
专家分:7661
注 册:2014-5-19
收藏
得分:5 
真心没耐心看完,最好多加些注解并缩进
2015-08-15 12:04
Bett
Rank: 1
等 级:新手上路
帖 子:15
专家分:9
注 册:2015-8-17
收藏
得分:5 
用一些版本的C++好像不支持包含中文字符的输入输出,会乱码(同新手)。
2015-08-17 09:04
农民工
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:21
帖 子:109
专家分:639
注 册:2015-8-22
收藏
得分:5 
cout<<"YOUR"<<endl;
cin>>string;//这行很诡异
cout<<"Robet"<<endl;
2015-08-22 15:07
快速回复:求大神~~十分感谢
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026458 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved