请大神们看看这段代码有何错,为何得不到我想要的结果?

qq1921275258 2012-06-30 07:05:01
string ZH(int const &b,vector<string> const &SF) {
vector<string>::const_iterator k=SF.begin();
ostringstream oss;
oss<<b;
string q=oss.str();
string a1=*(k+0),a2=*(k+1),a3=*(k+2),a4=*(k+3),a5=*(k+4);
if(a1.find(q)!=string::npos)return "水";
else if(a2.find(q)!=string::npos)return "火";
else if(a3.find(q)!=string::npos)return "木";
else if(a4.find(q)!=string::npos)return "金";
else if(a5.find(q)!=string::npos)return "土";
else return "";
}
string WX(string const &b1,int const &b,vector<string>const &SF) {
string const &b2=ZH(b,SF);
if((b1+b2=="金水")||(b1+b2=="木火")||(b1+b2=="水木")||(b1+b2=="火土")||(b1+b2=="土金"))return "SY";
else if((b1+b2=="金土")||(b1+b2=="木水")||(b1+b2=="水金")||(b1+b2=="火木")||(b1+b2=="土火"))return "SZ";
else if((b1+b2=="金木")||(b1+b2=="木土")||(b1+b2=="水火")||(b1+b2=="火金")||(b1+b2=="土水"))return "KY";
else if((b1+b2=="金火")||(b1+b2=="木金")||(b1+b2=="水土")||(b1+b2=="火水")||(b1+b2=="土木"))return "KZ";
else if((b1+b2=="金金")||(b1+b2=="木木")||(b1+b2=="水水")||(b1+b2=="火火")||(b1+b2=="土土"))return "TT";
else return "";
}
...全文
92 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

703

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder ActiveX/COM/DCOM
社区管理员
  • ActiveX/COM/DCOM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧