求助:用C语言编写速算24点小游戏
要求如下:
游戏规则如下:一副牌中抽去大小王剩下52张,任意抽取4张牌(称牌组),用加、减、乘、除(可加括号)把牌面上的4个数算成24.每张牌必须用一次且只能用一次,如抽出的牌是3、8、8、9,那么算式为(9-8)×8×3或3×8+(9-8)或(9-8÷8)×3等.
需要说明的是:经计算机准确计算,一副牌(52张)中,任意抽取4张可有1820种不同组合,其中有458个牌组算不出24点,如A、A、A、5。
要求:
(1)先随机抽取牌组
(2)1分钟倒计时
(3)等待用户输入答案字符串(输入格式见下方说明)
(4)若在1分钟之内,游戏者输入答案字符串按回车结束,此时停止计时,由程序去判断结果是否为24。
(a) 若结果为24,则提示“Congratulations, continue to play(Y/N)?”,等待用户输入,并根据输入的字母来决定是否继续游戏。
(i) 若输入’Y/y’,跳转到(1)。
(ii) 若输入’N/n’,跳转到(6)。
(b) 若结果不是24,则提示“Wrong”,恢复计时,转(3)。
(5)若在1分钟之内,游戏者未能输入答案字符串,则由程序给出一种组合,输出一种答案字符串(输出格式见下方),并提示是否继续“continue to play(Y/N)?”,等待用户输入,并根据输入的字母来决定是否继续游戏。如果考虑四个数的所有组合都不能算出24点,则给出提示“the four numbers can’t generate twenty four. continue to play(Y/N)?” 等待用户输入,并根据输入的字母来决定是否继续游戏。
(i) 若输入’Y/y’,跳转到(1)。
(ii) 若输入’N/n’,跳转到(6)。
(6)结束程序
答案字符串的输入输出格式要求,以(9-8)×8×3 为例,要求“(9-8)*8*3”形式输入输出。
有谁能给出完整的答案吗..要完整的.用C语言的.C++也行.在visual c++6.0环境中