新网创想网站建设,新征程启航

为企业提供网站建设、域名注册、服务器等服务

C语言实现猜数字游戏(虚拟登陆版)-创新互联

一、 游戏介绍。

网站建设哪家好,找创新互联建站!专注于网页设计、网站建设、微信开发、成都小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了黄石港免费建站欢迎大家使用!

内容:首先进行虚拟登录;然后通过程序生成1到100的随机数,让用户进行猜测。

方法:

1、首先需要让用户确认是否进行游戏,输入y进行游戏,输入n退出游戏。

2、进入游戏后,要求用户登录,输入用户名和验证码。

登陆成功后,即可进行猜数字游戏(从根据提示从键盘输入整数,进行猜测。)猜对后,如果继续游戏,则再次输入y,重复上述操作。退出游戏,输入n。

二、代码实现。

1、构建打印函数,生成游戏菜单。

效果显示:

2、 构建登陆函数,设置用户名和验证码。

效果显示:

3、构建游戏函数。

效果显示:

4、构建主函数。

通过switch语句判断是否进行游戏,其中游戏函数game()是在登陆函数fun_2()末尾调用的。

三、游戏技巧。

可以借助二分法来进行游戏。如果使用二分法进行游戏,来猜100以内的随机数字,最多7次就能才对该随机数字。

四、代码附上:

#include "stdio.h"


game()// 定义游戏函数
{
	int num_1 = 0;
	int num_2 = rand() % 100 + 1;//生成随机数
	while ('G')
	{
		printf("\t\t\t\t\t|——————————————————|\n");
		printf("\t\t\t\t\t|*********** 猜数字小游戏 ***********|\n");
		printf("\t\t\t\t\t|*请猜数字:\t");
		scanf_s("%d", &num_1);
		
		if (num_1 == num_2)
		{
			printf("\t\t\t\t\t|********** 恭喜您,猜对了!*********|\n");
			printf("\t\t\t\t\t|************************************|\n");
			printf("\t\t\t\t\t|——————————————————|\n");
			break;
		}
		else if (num_1 >num_2)
		{
			printf("\t\t\t\t\t|************** 猜大了!*************|\n");
			printf("\t\t\t\t\t|************** 再试试!*************|\n");
			printf("\t\t\t\t\t|************************************|\n");
			printf("\t\t\t\t\t|——————————————————|\n");
		}
		else
		{
			printf("\t\t\t\t\t|************* 猜小了! **************|\n");
			printf("\t\t\t\t\t|************* 再试试!*************|\n");
			printf("\t\t\t\t\t|************************************|\n");
			printf("\t\t\t\t\t|——————————————————|\n");
		}
	}


}
fun_1()// 定义打印函数
{
	printf("\t\t\t\t|—————————————————————————|\n");
	printf("\t\t\t\t|**************************************************|\n");
	printf("\t\t\t\t|**************************************************|\n");
	printf("\t\t\t\t|******************  y next  **********************|\n");
	printf("\t\t\t\t|******************  n exit  **********************|\n");
	printf("\t\t\t\t|**************************************************|\n");
	printf("\t\t\t\t|**************************************************|\n");
	printf("\t\t\t\t|—————————————————————————|\n");
}

fun_2()//定义登陆函数
{
	char name[10] = { 0 };
	int ch = 0;
	int password = 0;
	do
	{


		printf("\t\t\t\t\t|——————————————————|\n");
		printf("\t\t\t\t\t|    ********* 登陆系统 *********    |\n");
		printf("\t\t\t\t\t|   *用户名:");
		scanf_s("%s", name, 10);

		while ((ch = getchar()) != '\n')
		{
			;
		}//读取回车字符,以免造成bug
		printf("\t\t\t\t\t|   *验证码: ");

		password = getchar();

		printf("\t\t\t\t\t     ****************************    |\n");
		printf("\t\t\t\t\t|——————————————————|\n");
		if (password == 'G')
		{
			printf("登陆成功!!\n");
		}
		else
		{
			printf("用户名或者密码错误!!\n");
			printf("请重试!!\n");
		}
		if (password == 'G')
			break;
	} while (scanf_s);

	game();//调用游戏函数


}

int main()
{
	char ch_1 = 0;
	srand((char)time(NULL));
	int ch_2 = 0;

	do
	{
		fun_1();//调用打印函数

		puts("是否继续:y,n>");
		ch_1 = getchar();
		while ((ch_2 = getchar()) != '\n')
		{
			;
		}//读取回车字符,以免造成bug
		switch (ch_1)
		{
		case 'y':
			fun_2(); // 调用登录函数
			break;
		case 'n':
			printf("\t\t\t\t\t|——————————————————|\n");
			printf("\t\t\t\t\t|************************************|\n");
			printf("\t\t\t\t\t|************** 游戏结束!***********|\n");
			break;
		default:
			printf("\t\t\t\t\t|——————————————————|\n");
			printf("\t\t\t\t\t|************************************|\n");
			printf("\t\t\t\t\t|********* 输入有误!请重试!********|\n");
			printf("\t\t\t\t\t|************************************|\n");
			printf("\t\t\t\t\t|——————————————————|\n");
			break;
		}
		if (ch_1 == 'n')
			break;
		while ((ch_2 = getchar()) != '\n')
		{
			;
		}//读取回车字符,以免造成bug
	} while (ch_1);

	printf("\t\t\t\t\t|**************** 再见!*************| \n");
	printf("\t\t\t\t\t|——————————————————|\n");
	return 0;
}

五、最后:

感谢大家的支持,博主的能力有限,内容仅供参考,欢迎大家在评论区和我交流!

以后会经常发一些有趣的小游戏的代码,感兴趣的小伙伴可以关注一下!!感谢大家支持!!

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


新闻名称:C语言实现猜数字游戏(虚拟登陆版)-创新互联
转载注明:http://www.wjwzjz.com/article/dehsoh.html
在线咨询
服务热线
服务热线:028-86922220
TOP