一、问题描述:该游戏可以由程序随机产生或由用户输入四个0到9之间的数字,且不重复。玩游戏者通过游戏提示输入八次来匹配上面所输入的数字。A表示位置正确且数字正确,B表示数字正确而位置不正确。二、功能要求:本游戏显示这样的菜单:(1) 随机产生数据(2) 用户输入数据(3) 退出游戏游戏成功与否都能返回主菜单三、算法提示:数据结构:数组用简单的程序设计方法四、测试数据:测试数据: 3792第一次输入: 12340A2B第二次输入: 56780A1B第三次输入: 08670A1B第四次输入: 97861A1B第五次输入: 17942A0B第六次输入: 27932A2B第七次输入: 37924A0B游戏成功!!!五、其它:对该系统有兴趣的同学可以在实现系统基本功能后,完善系统的其它功能,如:破记录功能,若你所匹配的次数小于纪录保持者,则为破纪录。
1条回答 默认 最新
- CSDN专家-黄老师 2021-06-29 19:13关注
参考一下:
#include<stdio.h> #include<time.h.> #include<stdlib.h> void menu()//菜单 { printf("*********************\n"); printf("****1.play 0.exit****\n");//选择“1”表示“玩游戏” printf("*********************\n");//选择“0”表示“退出” } void play_game()//玩游戏 { int rand_num = rand() % 100;//随机产生0~99范围内的整数 int tmp = 0; while (1) { printf("请输入你猜的数字:"); scanf("%d", &tmp); if (tmp == rand_num) { printf("猜对了\n"); break; } else if (tmp > rand_num) { printf("猜大了\n"); } else { printf("猜小了\n"); } } } int main() { int input = 0; srand((unsigned int)time(NULL));//srand是随机数发生器的初始化函数 //为了防止每次玩游戏时随机产生的数字重复,常使用time函数获得系统时间以初始化 do { menu(); printf("请选择:"); scanf("%d", &input); switch (input) { case 1: play_game(); break; case 0: exit(EXIT_SUCCESS); break; default://当输入菜单中不存在选项时,提醒玩家“选择错误” printf("选择错误.\n"); break; } } while (input); system("pause"); return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 Vue3 大型图片数据拖动排序
- ¥15 划分vlan后不通了
- ¥15 GDI处理通道视频时总是带有白色锯齿
- ¥20 用雷电模拟器安装百达屋apk一直闪退
- ¥15 算能科技20240506咨询(拒绝大模型回答)
- ¥15 自适应 AR 模型 参数估计Matlab程序
- ¥100 角动量包络面如何用MATLAB绘制
- ¥15 merge函数占用内存过大
- ¥15 使用EMD去噪处理RML2016数据集时候的原理
- ¥15 神经网络预测均方误差很小 但是图像上看着差别太大