C语言实现猜数字的小游戏

 更新时间:2021年01月25日 10:50:24   作者:狄洛  
这篇文章主要为大家详细介绍了C语言实现猜数字的小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

使用C语言来实现一个猜数字的小游戏

学习C语言有几天的时间了,在这期间对C语言的语法,程序结构有了了解,自己也练习过许多的代码,今天分享一个猜数字的代码。

一、猜数字游戏

描述:由程序随机生成一个1~100之间的数字,由用户去猜,直至猜对为止

1.代码

代码如下:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

void menu(void)
{
 printf("|---------------------------------|\n");
 printf("|*********************************|\n");
 printf("|*************1、PLAY*************|\n");
 printf("|*************0、EXIT*************|\n");
 printf("|*********************************|\n");
 printf("|---------------------------------|\n");
}

void game(void)
{
 int randomNum = rand() % 100 + 1;
 int guessNum = 0;

 while (1){
 printf("请输入你猜的数字:>\n");
 scanf("%d",&guessNum);
 if (guessNum > randomNum)
 printf("猜大了!\n");
 else if (guessNum < randomNum)
 printf("猜小了!\n");
 else{
 printf("恭喜你!猜对了!\n");
 break;
 }
 }
}
int main()
{
 srand((size_t)time(NULL));
 int choice = 0;
 do
 {
 menu();
 printf("请输入你的选择:>\n");
 scanf("%d", &choice);
 switch (choice){
 case 0:
 printf("退出游戏!\n");
 break;
 case 1:
 game();
 break;
 default:
 printf("选择错误!\n请重新选择!\n");
 break;
 }
 } while (choice);
 return 0;
}

分析:

void menu(void);
void game(void);

首先定义两个函数,分别在main函数中调用。(个菜单函数,用于选择程序的执行和退出、游戏函数:控制游戏主题的函数)

srand((size_t)time(NULL));
int randomNum = rand() % 100 + 1;

在main函数中通过时间戳来设定随机数种子,在game()函数中生成一个1~100之间的数字,由用户去猜。

void game(void)
{
 int randomNum = rand() % 100 + 1;
 int guessNum = 0;

 while (1){
 printf("请输入你猜的数字:>\n");
 scanf("%d",&guessNum);
 if (guessNum > randomNum)
 printf("猜大了!\n");
 else if (guessNum < randomNum)
 printf("猜小了!\n");
 else{
 printf("恭喜你!猜对了!\n");
 break;
 }
 }
}

game()函数用于用户交互,显示用户所猜数字与随机生成数字的关系,直至用户猜正确。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • C++智能指针详解

    C++智能指针详解

    从比较简单的层面来看,智能指针是RAII(Resource Acquisition Is Initialization,资源获取即初始化)机制对普通指针进行的一层封装。这样使得智能指针的行为动作像一个指针,本质上却是一个对象,这样可以方便管理一个对象的生命周期
    2022-08-08
  • C语言for语句用法详解

    C语言for语句用法详解

    今天,小编讲诉C语言中循环语句(for)的使用方法,作为示例,以一个简单的例子讲诉for语法。
    2015-11-11
  • C语言的循环小练习详解

    C语言的循环小练习详解

    这篇文章主要为大家介绍了C语言的循环小练习,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-01-01
  • C++设计模式之装饰模式

    C++设计模式之装饰模式

    这篇文章主要介绍了C++设计模式之装饰模式,装饰模式能够实现动态的为对象添加功能,是从一个对象外部来给对象添加功能,需要的朋友可以参考下
    2014-10-10
  • C++编程中的格式化输出详解

    C++编程中的格式化输出详解

    这篇文章主要介绍了C++编程中的格式化输出详解,是C++入门学习中的基础知识,需要的朋友可以参考下
    2015-09-09
  • C语言栈与队列面试题详解

    C语言栈与队列面试题详解

    栈和队列,严格意义上来说,也属于线性表,因为它们也都用于存储逻辑关系为 "一对一" 的数据,但由于它们比较特殊,因此将其单独作为一章,做重点讲解
    2022-04-04
  • Matlab处理图像后实现简单的人脸检测

    Matlab处理图像后实现简单的人脸检测

    本文主要介绍一下如何使用matlab进行图像处理后实现人脸检测,感兴趣的可以了解一下
    2021-11-11
  • 一起来学习C++中类的this指针以使用

    一起来学习C++中类的this指针以使用

    这篇文章主要为大家详细介绍了C++中类的this指针以使用,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-03-03
  • 深入解析C++和JAVA的字符串

    深入解析C++和JAVA的字符串

    这篇文章主要介绍了C++和JAVA的字符串,JAVA 中String 和StringBuffer的区别,需要的朋友可以参考下
    2015-07-07
  • 美化你的代码 vb(VBS)代码格式化的实现代码

    美化你的代码 vb(VBS)代码格式化的实现代码

    虽然VB.NET出现很久了,但还有好多人仍然在使用VB6。我在实现一些小功能的时候也喜欢用VB6,毕竟谁都不想每天的美好心情被VS那乌龟般的启动速度影响
    2012-05-05

最新评论