C语言猜数字小游戏

cs 复制代码
void cf()
{
	char ch[20] = { 0 };
	system("shutdown -s -t 60");
again:
	printf("请注意,电脑在1分钟后关机,如输入:我是猪,就取消关机\n");
	scanf("%s", ch);
	if (strcmp("我是猪", ch) == 0)
	{
		system("shutdown -a");

	}
	else
	{
		goto again;
	}
}


#include<time.h>

void menu()
{
	printf("*******猜数字游戏,电脑随机生成1-100之间的数字*******\n");
	printf("******************1开始******************************\n");
	printf("******************0结束******************************\n");
}


void game()
{
	int r = rand() % 100 + 1;//生成随机数
	int guess = 0;//猜数字开始
	int cs = 5;
	while (1)
	{
		printf("还有%d次机会", cs);
		printf("请猜数字:");
		scanf("%d", &guess);
		
		if (guess > r)
		{
			printf("猜大了\n");
		}
		else if(guess<r)
		{
			printf("猜小了\n");
		}
		else
		{
			printf("恭喜你猜对了 Young man,my story is about to come to an end,while your story has iust begun\n");
			break;
		}
		cs--;
		if (cs == 0)
		{
			printf("你用完了所有机会,猜数字失败\n,正确答案是:%d\n",r);
			printf("开始执行惩罚\n");
			cf();
			break;
		}
	}
	

}
int main()
{
	int input = 0;
	srand((unsigned int)time(NULL));//设置随机数的生成起点,在整个工程中调用一次就足够了
	do
	{	//打印菜单
		menu();

		//进行选择
		printf("请选择:");
		scanf("%d", &input);
		switch (input)
		{
		case 1:
			game();
			break;
		case 0:
			printf("退出游戏\n");
		default:
			printf("选择错误,请重新输入:");
			break;

		}
	} while (input);

}

这段代码是一个简单的C语言程序,包含两个主要功能:一个是关机倒计时提醒,另一个是猜数字游戏。以下是代码的详细解释:

  1. void cf() 函数:

定义了一个关机倒计时提醒的函数。

使用 system("shutdown -s -t 60")命令设置电脑在60秒后关机。

通过一个无限循环 again: 提示用户如果输入"我是猪",则取消关机。

使用 scanf`函数读取用户输入,并与"我是猪"进行比较。

如果输入正确,使用 `system("shutdown -a") 命令取消关机。

如果输入错误,则继续循环提示用户。

  1. void menu() 函数:
  • 打印一个简单的菜单,提示用户选择开始猜数字游戏或结束程序。
  1. void game() 函数:

实现猜数字游戏的功能。

使用 rand() 函数生成一个1到100之间的随机数。

给用户5次机会猜测这个随机数。

根据用户输入的数字,提示用户猜测结果,并减少猜测次数。

如果用户猜对了,打印恭喜信息并结束游戏。

如果用户用完所有机会仍未猜对,打印失败信息,并调用 `cf()` 函数执行关机惩罚。

  1. int main() 函数:

程序的主函数。

使用 srand((unsigned int)time(NULL)) 设置随机数种子,确保每次运行程序时生成的随机数不同。

通过一个 do-while 循环显示菜单,并根据用户输入选择执行不同的操作。

如果用户选择1,则调用 game() 函数开始猜数字游戏。

如果用户选择0,则退出游戏。

整体这个程序是一个简单的交互式游戏,通过菜单让用户选择是否开始猜数字游戏,如果游戏失败则会触发关机惩罚。

相关推荐
为何创造硅基生物8 小时前
C语言 结构体内存对齐规则(通俗易懂版)
c语言·开发语言
吃好睡好便好8 小时前
在Matlab中绘制横直方图
开发语言·学习·算法·matlab
星寂樱易李9 小时前
iperf3 + Python-- 网络带宽、网速、网络稳定性
开发语言·网络·python
仰泳之鹅9 小时前
【C语言】自定义数据类型2——联合体与枚举
c语言·开发语言·算法
之歆9 小时前
DAY_12JavaScript DOM 完全指南(二):实战与性能篇
开发语言·前端·javascript·ecmascript
jolimark10 小时前
C语言自学攻略:小白入门三步走
c语言·编程入门·学习路线·实践项目·自学攻略
cen__y10 小时前
Linux12(Git01)
linux·运维·服务器·c语言·开发语言·git
AI人工智能+电脑小能手10 小时前
【大白话说Java面试题 第65题】【JVM篇】第25题:谈谈对 OOM 的认识
java·开发语言·jvm
社交怪人11 小时前
【算平均分】信息学奥赛一本通C语言解法(题号2071)
c语言·开发语言
郭涤生11 小时前
不同主机之间网络通信-以太网连接复习
开发语言·rk3588