猜数字游戏

猜数字游戏

今天分享一个在学习C语言阶段可以练练手的小项目,可以让学习编程的朋友更有动力。如有不足,请提出建议!

  • 做任何一个项目或者程序,无论大小,都需要做好前期构思准备,中期实现每个部分,后期完善并且查缺补漏。

前期准备:猜数字游戏,需要的玩家与电脑进行数字匹配,电脑出一个随机值,玩家输入,电脑判定。
-可以画个流程图

流程图

中期代码实现:一般习惯使用一个头文件,俩个源文件。

game.h头文件

#define  _CRT_SECURE_NO_WARNINGS 1	

//调用输入输出的头文件
#include<stdio.h>
//调用随机值的头文件
#include<stdlib.h>
//调用时间的头文件
#include<time.h>
//菜单1:进入游戏|退出游戏
void menu1();
//菜单2:再次进入游戏|退出游戏
void menu2();
//游戏主题
void game();
  • operate.c源文件
#include"game.h"
int main(void)
{
	//调用随机值
	srand((unsigned int) time(NULL));
	int imput = 0;
	//初次玩游戏
	menu1();
	printf("请输入数字:\n");
	scanf("%d",&imput);
	switch (imput)
	{
	case 1:
		game();
		break;
	case 0:
		printf("感谢你的游玩!\n");
		break;
	default:
		printf("输入错误!请重新输入:\n");
		break;
	}
	//再次游玩
	do
	{
		menu2();
		printf("请输入数字:\n");
		scanf("%d", &imput);
		switch (imput)
		{
		case 1:
			game();
			break;
		case 0:
			printf("感谢你的游玩!\n");
			break;
		default:
			printf("输入错误!请重新输入:\n");
			break;
		}
	} while (imput);
	return 0;
}

game.c源文件

#include"game.h"
//菜单1
void menu1()
{
	printf("************************\n");
	printf("******** 1.game ********\n");
	printf("******** 0.exit ********\n");
	printf("************************\n");
}
//菜单2
void menu2()
{
	printf("*************************\n");
	printf("******** 1.again ********\n");
	printf("******** 0.exit  ********\n");
	printf("*************************\n");
}
//进入游戏
void game()
{
	//设置一个1-100的值
	int rand_num = rand() % 100 + 1;
	int count = 0;
	do {
		int imput = 0;
		//设置一个计数器,设置超过7次游戏结束
		printf("请猜猜数字:\n");
		scanf("%d", &imput);
		//与系统设定的值比较大小
		if (imput > rand_num)
		{
			count++;
			printf("不好意思!猜大了!\n");
		}
		else if (imput < rand_num)
		{
			count++;
			printf("不好意思!猜小了!\n");
		}
		else
		{
			count++;
			break;
		}
		//判定判断次数是否为7,7次后退出
		if (count > 7)
		{
			break;
		}
	} while (1);
	//判断次数,输出
	if (count > 7)
	{
		printf("不好意思!您失败了!\n");
		printf("真正的数字是%d \n",rand_num);
	}
	else
	{
		printf("恭喜您!猜对了!\n");
		printf("您一共猜了%d次。\n",count);
	}
}

后期运行结果:
结果

这里无法演示后期完善过程,写好代码后,需要一次一次的修改和完善,所以希望大家好好加油!

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值