求助:用C语言编写速算24点小游戏

Frank-L 2010-04-22 11:11:23
要求如下:
游戏规则如下:一副牌中抽去大小王剩下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环境中
...全文
1028 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
周靖峰 2010-05-25
  • 打赏
  • 举报
回复
好题,不过我不会
Frank-L 2010-05-24
  • 打赏
  • 举报
回复
一边倒计时。一边等待用户输入。怎么实现
vanchristin 2010-04-23
  • 打赏
  • 举报
回复
暴力算法,用一个1820个元素的结构体数组。成员分别为牌组和答案,都是字符数组
田暗星 2010-04-23
  • 打赏
  • 举报
回复
最好的方法就是 提前使用数组存储 所有答案

输入时 对比就行了
kingstarer 2010-04-23
  • 打赏
  • 举报
回复
24点算法网上有,但是游戏界面就得你自己想办法写写了
CCCCCCCCCCCCCCC 2010-04-23
  • 打赏
  • 举报
回复
既然是赤裸裸的求源码

google
ithiker 2010-04-23
  • 打赏
  • 举报
回复
mark
好问题

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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