首页 > 其他分享 >C语言编写的“猜数字“小游戏

C语言编写的“猜数字“小游戏

时间:2023-10-10 16:59:57浏览次数:49  
标签:int ret C语言 break 小游戏 printf cs 编写 include

2023年10月7日,

今天给大家带来的是用C语言编写的一个猜数字小游戏,使用了循环就可以完成

 


 

首先我们需要先做一个简单的目录,这样方便多次使用,增加了游戏的可玩性,看代码:

 

1 void a_catalogue()
2 {
3     printf("************************************\n");
4     printf("***********> 0.exit     <***********\n");
5     printf("***********> 1.玩一次   <***********\n");
6     printf("************************************\n");
7 }

 

 

接下来开始正文内容:

 

 

1 int main()
 2 {
 3         int s = 0;                         //先定义一个变量,方便下面接受数值
 4      do
 5      {
 6         a_catalogue();                     //调用玩法列表
 7         printf("输入你的选择:>");
 8         scanf("%d", &s);
 9         switch (s)
10         {
11         case 0:                            //输入0就可以退出
12             printf("已退出");              
13             break;
14         case 1:                            //输入1就进行下一步
15             int ret = rand() % 100 + 1;    //rand()%100+1 是生成一个1-100的随机数字
16             int cs = 0;
17             while (cs != ret)
18             {
19                 printf("输入要猜的数字:");
20                 scanf("%d", &cs);
21                 if (cs > ret)
22                 {
23                     printf("猜大了\n");
24                 }
25                 else if (cs < ret)
26                 {
27                     printf("猜小了\n");
28                 }
29             }
30             if (cs == ret)
31             {
32                 printf("猜对了\n");       
33             }
34             break; 
35         default:                        //输入其他除0或1外都会提示这句话
36             printf("请重新输入");
37             break;
38         }
39 
40     } while (s);                        //使用do while 循环可以更好的实现效果
41     return 0;
42 }

 

 


 

到这里一个简单的猜数字就完成了,但是当你玩几次后就会发现,随机数永远都只是那个不会变,这个时候我们需要使用到一个函数srand()

 

感兴趣的小伙伴可以去C语言|C++中文网上面搜索srand和time了解一下,在这里我就不过多介绍了,下面是所引用的内容:

1 #include <time.h>  
2 #include <stdlib.h> 
3 //需要引用两个头文件
4 srand((unsigned int)time(NULL)); 
5 //把此语句放在上文代码中的rand函数的上面,以表示声明

以上就是猜数字的全部代码,下面我将给大家奉上全部代码:

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 #include <time.h>
 4 void a_catalogue()()
 5 {
 6     printf("************************************\n");
 7     printf("***********> 0.exit     <***********\n");
 8     printf("***********> 1.玩一次   <***********\n");
 9     printf("************************************\n");
10 }
11 int main()
12 {
13     int s = 0;
14     do
15     {
16         a_catalogue();
17         printf("输入你的选择:");
18         scanf("%d", &s);
19         switch (s)
20         {
21         case 0:
22             printf("已退出");
23             break;
24         case 1:
25             srand((unsigned int)time(NULL));
26             int ret = rand() % 100 + 1;
27             int cs = 0;
28             while (cs != ret)
29             {
30                 printf("输入要猜的数字:");
31                 scanf("%d", &cs);
32                 if (cs > ret)
33                 {
34                     printf("猜大了\n");
35                 }
36                 else if (cs < ret)
37                 {
38                     printf("猜小了\n");
39                 }
40             }
41             if (cs == ret)
42             {
43                 printf("猜对了\n");
44             }
45             break;
46         default:
47             printf("请重新输入");
48             break;
49         }
50 
51     } while (s);
52     return 0;
53 }

 

 


 

 

以上就是全部过程了,不懂或者是有意向一起研究的可以加私聊我

 

标签:int,ret,C语言,break,小游戏,printf,cs,编写,include
From: https://www.cnblogs.com/zaihui/p/17746004.html

相关文章

  • sql server 编写函数,去除小数点后多余的0
    sqlserver编写函数,去除小数点后多余的0要在SQLServer中编写一个函数来去除小数点后多余的零,你可以使用以下示例的方法:CREATEFUNCTIONdbo.RemoveTrailingZeros(@inputDECIMAL(18,6))RETURNSVARCHAR(255)ASBEGINDECLARE@resultVARCHAR(255);--将DE......
  • 【原创】实现自动编写软件功能测试用例
    国内积极推进“去测试化”的大环境下,想走完一套从需求评审-用例编写-提测的完整流程,越来越难但软件测试入行越久,就越会发现“用例驱动测试”才是正确的事但编写测试用例本身是一件耗时,又不被允许耗时的重要事示例: 用例放大: 留言多的话,我再细说 ......
  • ansible的host几种编写样式以及引用方式
    借用的,https://www.cnblogs.com/chengxuyonghu/p/13763561.htmlAnsiblehosts文件配置IP的方式第一种IP+A/C示例如下:192.168.0.10ansible_ssh_user=“vagrant”ansible_ssh_pass=“vagrant”第二种nickname+IP+A/Ctestserveransible_ssh_host=192.168.0.10ansible_s......
  • 如何编写难以维护的 React 代码?耦合通用组件与业务逻辑
    在众多项目中,React代码的维护经常变得棘手。其中一个常见问题是:将业务逻辑直接嵌入通用组件中,导致通用组件与业务逻辑紧密耦合,使其失去“通用性”。这种做法使通用组件过于依赖具体业务逻辑,导致代码难以维护和扩展。示例:屎山是如何逐步堆积的让我们看一个例子:我们在业务组件Pag......
  • C语言 - 函数指针
    1.基本概念函数指针:首先它是一个指针,一个指向函数的指针,在内存空间中存放的是函数的地址; 1.1函数指针的定义形式函数指针的定义:函数的返回值类型(*指针名)(函数的参数列表类型) 1.2函数指针的使用方法#include<stdio.h>//返回两个数中的最大值intmax(inta,int......
  • C语言 - 万能指针
    1.什么是万能指针?万能指针其实就是void*类型的指针,而void*指针一般被称为通用指针或叫泛指针。它是C语言关于纯粹地址的一种约定。当某个指针是void型指针时,所指向的对象不属于任何类型。因为void指针不属于任何类型,不可以对其进行算术运算,比如自增,编译器不知道其自增需要增......
  • 【C语言入门】第十天
    【例题1】1108.IP地址无效化-力扣(LeetCode)char*defangIPaddr(char*address){intlen=strlen(address);char*p=(char*)malloc(sizeof(char)*len+6+1);inti,j;for(i=0,j=0;i<len;i++){if(address[i]=='.'){j+......
  • C语言没人教但必须了解的技巧
    前言工作了一年,对于代码的理解更进了一步,标准且好用的c代码能够使开发效率更上一层楼,这里整理了一下最近看到的一些c代码技巧,能使c代码编写更加标准化。参考文章地址:C语言中常用的宏定义(qq.com)C语言位操作符8个常用的小技巧(qq.com)宏定义类1.防止重复定义防止头文件......
  • 编辑linux服务启动命令(app-script.sh命令编写)
    #!/bin/sh#注:这里可替换为你自己的执行程序,其他代码无需更改APP_NAME=app-biz.jar#使用说明,用来提示输入参数usage(){echo"Usage:sh脚本名.sh[start|stop|restart|status]"exit1}#检查程序是否在运行is_exist(){pid=`ps-ef|grep$APP_NAME|grep-vgrep|awk'{print......
  • C语言 - malloc与free函数
    C 内存管理本章将讲解C中的动态内存管理。C语言为内存的分配和管理提供了几个函数。这些函数可以在 <stdlib.h> 头文件中找到。在C语言中,内存是通过指针变量来管理的。指针是一个变量,它存储了一个内存地址,这个内存地址可以指向任何数据类型的变量,包括整数、浮点数、字......