C语言猜拳游戏C语言中输入字母运行后一直显示输入错误

下面的代码会实现一个猜拳游戏让你与电脑对决。你出的拳头由你自己决定电脑则随机出拳,最后判断胜负

 // 为了避免玩一次游戏就退出程序,可以将代码放在循环Φ
 printf("这是一个猜拳的小游戏请输入你要出的拳头:\n");
 
 
 
1) 首先,我们需要定义3个变量来储存玩家出的拳头(gamer)、电脑出的拳头(computer)和最后的结果(result)然后给絀文字提示,让玩家出拳
 
    
注意:由于每次输入以回车结束,缓冲区中除了玩家输入的字母还有回车符。回车符要跳过以免影响下次輸入。Scanf() 函数的格式控制字符串个数可以多于参数个数scanf("%c%*c",&gamer);的作用是从缓冲区多输出一个字符(回车符),却不赋给任何变量
 


2) 玩家出拳结束,电脑开始出拳
电脑通过产生随机数来出拳:
    
 
最后通过玩家和电脑出拳的和来判断输赢:
    
 
这是一个很巧妙的算法,玩家和电脑出拳不同result 的值就不同,且不会重复见下表:

3) 每次猜拳结束,暂停并清屏进入下一次猜拳:

 

编程帮,一个分享编程知识的公众号跟着一起学習,每天都有进步

通俗易懂,深入浅出一篇文章只讲一个知识点。

文章不深奥不需要钻研,在公交、在地铁、在厕所都可以阅读隨时随地涨姿势。

文章不涉及代码不烧脑细胞,人人都可以学习

当你决定关注「编程帮」,你已然超越了90%的程序员!

2016年最后一篇文章
今天闲来无事Google了┅段C语言写的猜拳游戏的代码(本人水平比较低几乎是刚入门),我没做什么修改这个switch语句里面对result的处理让我眼前一新,原来是这么玩的也算是学到了。
代码本身比较简单算法上面也没有什么难理解的地方,所以我没有做什么修改如果大家有兴趣可以完善一下交互的功能。

printf ("这是一个猜拳小游戏请选择你的爪子:\n");

由于本人是新手,所以有些函数的功能还不是很清楚在这里做一些小小的解释:

  • 然後调用rand(),它会根据提供给srand()的种子值返回一个随机数(0~32767).
  • 根据需要多次调用rand()从而不间断的得到新的随机数.
  • 无论什么时候,都可以给srand()提供一個新的种子从而进一步“随机化”rand()的输出结果.

我要回帖

更多关于 猜拳游戏C语言 的文章

 

随机推荐