C语言 猜数字游戏 猜1~100之间的数

系统管理员 2024-04-08 12:35 131阅读 0赞

猜数字游戏

猜1~100之间的数

  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. void menu() //菜单
  4. {
  5. printf("************************\n");
  6. printf("****** 1.play *******\n");
  7. printf("****** 0.exit *******\n");
  8. printf("************************\n");
  9. }
  10. void game()
  11. {
  12. //rand()函数是生成随机数字0~32767的函数
  13. //0~32767之间的所有数模100最大为99
  14. int ret=rand()%100+1;
  15. int guess=0;
  16. while(1)
  17. {
  18. printf("请输入你猜测的数字:>");
  19. scanf("%d",&guess);
  20. if(ret<guess)
  21. {
  22. printf("猜大了");
  23. }
  24. else if(ret>guess)
  25. {
  26. printf("猜小了");
  27. }
  28. else
  29. {
  30. printf("猜对了%d\n",guess);
  31. break;
  32. }
  33. }
  34. }
  35. int main()
  36. {
  37. int input=0;
  38. //根据电脑时间生成随机数
  39. srand((unsigned int)time(NULL));
  40. do
  41. {
  42. menu();
  43. printf("请进行选择:>");
  44. scanf("%d",&input);
  45. switch(input)
  46. {
  47. case 1:
  48. game(); break;
  49. case 0:
  50. printf("推出程序!\n"); break;
  51. default:
  52. printf("选择错误,请重新选择!\n"); break
  53. }
  54. }while(input);
  55. return 0;
  56. }

运行结果

运行结果

  思路解析:

1.既然要猜数字,那么就要生成随机的数字,来让我们猜。这就用到了生成随机数的函数 r a n d ( ) 范围 0 到 32767 和 s r a n d ( ) \color{red}{rand()范围0到32767和srand()} rand()范围0到32767和srand(),rand()函数每次生成程序启动,生成的随机数都是一样的,可谓是一次性游戏。这里就要使用到srand()函数,让这个函数来读取我们电脑上的时间,这样就可以生成真正意义上的随机数。

2.rand()和srand()都在头文件中,所以我们要引用头文件#include

3.易出错的点:我们定义随机生成的数为 r e t \color{red}{ret} ret,猜测的数字为 g u e s s \color{red}{guess} guess,在函数==game()==中当我们猜测的数字,比随机数大的时候(retguess)也是同样的道理。

4.剩下的为一些简单的逻辑+语句,不懂可以看我这篇博客if 和 switch 语句

学的不是技术,更是梦想

发表评论

表情:
评论列表 (有 0 条评论,131人围观)

还没有评论,来说两句吧...

相关阅读

    相关 c语言 数字游戏

    猜数字游戏是令游戏机随机产生一个100以内的正整数,用户输入一个数对其进行猜测,需要你编写程序自动对其与随机产生的被猜数进行比较,并提示大了(“Too big”),还是小了(“

    相关 C语言数字游戏

    游戏描述 系统随机产生一个1-100内的随机数,由玩家来猜。玩家输入不重复的1-100内的数字,按回车键后系统给出提示,提示猜的数字是偏大还是偏小,直到猜中系统产生的那个

    相关 C语言游戏

    系统随机产生四个不同的有序的数字 (从小到大排列),等待用户输入猜测的结果, 用A来表示数字正确且位置正确的个数 ,用B来表示数字正确但位置不正确的个数,给八次机会,猜中则游戏