关于网友提出的“ 帮忙改下程序”问题疑问,本网通过在网上对“ 帮忙改下程序”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题: 帮忙改下程序
描述: 各位 帮帮忙!这个程序怎么也改也调试不成功!(最好用C++)
#include
#include
#include
#include
#include
#include
using namespace std;
const int NUM = 26;
const string Wordlist[NUM] = {"alabama", "choice", "usually",
"dangerous", "deer", "panda", "love", "health", "exciting",
"interesting", "administrator", "PRofessional", "manage", "nonce", "onset",
"typeid", "quarter", "remote", "lovely", "car", "keeper",
"valid", "where", "mean", "important", "last"};//供游戏的单词库
int main()
{
srand(time(0));
char play;
cout << "Will you play a word game? ";
cin >> play;
play = tolower(play);
while(play=='y')
{
string first(wordlist[rand()%NUM]);//随机选择单词
int length=first.length();
string player(length,'-');//玩家猜测的单词
string badguess;//猜错的字母集合
int guesses=10;//猜错的机会
char guess;
cout<<"您有"<<>
cout<<"您的单词:"<<>
while(guesses>0&&player!=first)
{
cout<<"请您猜吧!";
cin>>guess;
if(badguess.find(guess)!=string::nposplayer.find(guess)!=string::npos)
{
cout<<"对不起,这个字母您已经猜过了。";
continue;
}//判定是否已经猜过
int temp=first.find(guess);
if(temp==string::npos)
{
cout<<"啊!猜错了。\n";
guesses--;
badguess+=guess;
}//猜错后的处理
else
{
player[temp]=guess;
temp=first.find(guess,temp+1);
while(temp!=string::npos)//继续搜索该字符,看是否单词中有多个该字符
{
player[temp]=guess;
temp=first.find(guess,temp+1);
}
}
cout<<"您还剩下"<<>
cout<<"您当前猜出的单词:"<<>
cout<<"您当前猜错的字母集合:"<<>
}
if(guesses==0)
cout<<"对不起,您失败了。\n";
else
cout<<"您真棒!\n";
cout<<"正确单词为:"<<>
cout << "Will you play again? ";
cin>>play;
}
system("PAUSE");
return 0;
}
以下出的错误,不知道那个写错了
f:\c\拆字游戏1.cpp(17) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(17) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(18) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(18) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(19) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(19) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(20) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(20) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(21) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(21) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(22) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(22) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(23) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(23) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(24) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(24) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(24) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(24) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(24) : error C2065: 'wordlist' : undeclared identifier
f:\c\拆字游戏1.cpp(24) : error C2109: subscript requires array or pointer type
f:\c\拆字游戏1.cpp(24) : error C2664: '__thiscall std::basic_string<>,class std::allocator >::std::basic_string<>,class std::allocator >(const class std::allocator &
)' : cannot convert parameter 1 from 'int' to 'const class std::allocator &'
Reason: cannot convert from 'int' to 'const class std::allocator'
No constructor could take the source type, or constructor overload resolution was ambiguous
f:\c\拆字游戏1.cpp(25) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(25) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(25) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(25) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(26) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(26) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(26) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(26) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(27) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(27) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(27) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(27) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(28) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(28) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(28) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(28) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(29) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(29) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(29) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(29) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(30) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(30) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(30) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(30) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(31) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(31) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(31) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(31) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(31) : error C2679: binary '<<' : no operator defined which takes a right-hand operand of type 'class std::basic_string<>,class std::allocator >' (or there is no acceptable conversion)
f:\c\拆字游戏1.cpp(32) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(32) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(32) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(32) : error C2018: unknown character '0xa1'
f:\c\拆字游戏1.cpp(32) : error C2784: 'bool __cdecl std::operator !=(const class std::allocator<_Ty> &,const class std::allocator<_U> &)' : could not deduce template argument for 'const class std::allocator<_Ty> &' from 'class std::basic_string<>
,struct std::char_traits,class std::allocator >'
f:\c\拆字游戏1.cpp(32) : error C2784: 'bool __cdecl std::operator !=(const class std::istreambuf_iterator<_E,_Tr> &,const class std::istreambuf_iterator<_E,_Tr> &)' : could not deduce template argument for 'const class std::istreambuf_iterator<_E,_T
r> &' from 'class std::basic_string<>,class std::allocator >'
f:\c\拆字游戏1.cpp(32) : error C2784: 'bool __cdecl std::operator !=(const class std::reverse_iterator<_RI,_Ty,_Rt,_Pt,_D> &,const class std::reverse_iterator<_RI,_Ty,_Rt,_Pt,_D> &)' : could not deduce template argument for 'const class std::reverse
_iterator<_RI,_Ty,_Rt,_Pt,_D> &' from 'class std::basic_string<>,class std::allocator >'
f:\c\拆字游戏1.cpp(32) : error C2784: 'bool __cdecl std::operator !=(const struct std::pair<_T1,_T2> &,const struct std::pair<_T1,_T2> &)' : could not deduce template argument for 'const struct std::pair<_T1,_T2> &' from 'class std::basic_string<>
r,struct std::char_traits,class std::allocator >'
f:\c\拆字游戏1.cpp(32) : error C2676: binary '!=' : 'class std::basic_string<>,class std::allocator >' does not define this operator or a conversion to a type acceptable to the predefined operator
f:\c\拆字游戏1.cpp(32) : fatal error C1903: unable to recover from previous error(s); stopping compilation
Error executing cl.exe.
拆字游戏1.obj - 60 error(s), 0 warning(s)
解决方案1: LZ的程序是随便复制过来的吧= =
我还帮你改好了,真是闲的蛋疼...
#include
#include
#include
#include
#include
#include
using namespace std;
const int NUM = 26;
const string Wordlist[NUM] = {"alabama", "choice", "usually",
"dangerous", "deer", "panda", "love", "health", "exciting",
"interesting", "administrator", "PRofessional", "manage", "nonce", "onset",
"typeid", "quarter", "remote", "lovely", "car", "keeper",
"valid", "where", "mean", "important", "last"};//供游戏的单词库
int main()
{
srand(time(0));
char play;
cout << "Will you play a word game? ";
cin >> play;
play = tolower(play);
while(play=='y')
{
string first(Wordlist[rand()%NUM]);//随机选择单词
int length=first.length();
string player(length,'-');//玩家猜测的单词
string badguess;//猜错的字母集合
int guesses=10;//猜错的机会
char guess;
cout<<"您有"<<>
cout<<"您的单词: "<<><>
while(guesses>0&&player!=first)
{
cout<<"请您猜吧!";
cin>>guess;
if(badguess.find(guess)!=string::npos&&player.find(guess)!=string::npos)
{
cout<<"对不起,这个字母您已经猜过了。";
continue;
}//判定是否已经猜过
int temp=first.find(guess);
if(temp==string::npos)
{
cout<<"啊!猜错了。\n";
guesses--;
badguess+=guess;
}//猜错后的处理
else
{
player[temp]=guess;
temp=first.find(guess,temp+1);
while(temp!=string::npos)//继续搜索该字符,看是否单词中有多个该字符
{
player[temp]=guess;
temp=first.find(guess,temp+1);
}
}
cout<<"您还剩下"<<>
cout<<"您当前猜出的单词:"<<>
cout<<"您当前猜错的字母集合:"<<>
}
if(guesses==0)
cout<<"对不起,您失败了。\n";
else
cout<<"您真棒!\n";
cout<<"正确单词为:"<<>
cout << "Will you play again? ";
cin>>play;
}
system("PAUSE");
return 0;
}
以上介绍了“ 帮忙改下程序”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/3777155.html