当前位置: 首页 > news >正文

C++比大小游戏

目录

  • 开头
  • 程序
  • 程序的流程图
  • 程序游玩的效果
  • 下一篇博客要说的东西

开头

大家好,我叫这是我58。

程序

#include <iostream>
#include <Windows.h>
using namespace std;
int main() {int ir = 1;char chparr[2] = { 0 };int ip1 = 0;int ip2 = 0;int i = 1;cout << "欢迎你们来玩这个比大小游戏,在这个游戏中,P1只能输入1~8以内的数和未知数X来跟P2的数比大小,P2也只能输入1~8以内的数和未知数X来跟P1的数比大小,这里面的未知数X的规则是:如果对面的数<5,那么未知数X=0,否则未知数X=9,而如果P1的数大于P2的数,那么P1记一分,如果P2的数大于P1的数,那么P2记一分,如果P1的数等于P2的数,那么谁都不记一分,这样的对局一共有三轮,如果P1的分大于P2的分,那么P1胜利,如果P2的分大于P1的分,那么P2胜利,但如果P1的分等于P1的分,那么P1和P2就平局了,你听明白了吗?" << endl << endl;for (; ir < 4; ir++) {system("pause");system("color 07");system("cls");cout << "第" << ir << "局\t" << ip1 << " : " << ip2 << endl;for (i = 1; i < 3; i++) {cout << "1 2 3 4 5 6 7 8 X" << endl << "请P" << i << "输入上面的其中一个数字 -> ";cin >> chparr[i - 1];rewind(stdin);while (!(chparr[i - 1] > '0' && chparr[i - 1] < '9' || 'X' == chparr[i - 1])) {cout << "\033[31;1m输入错误\033[0m,请P" << i << "重新输入上面的其中一个数字 -> ";cin >> chparr[i - 1];rewind(stdin);}chparr[i - 1] -= '0';cout << endl;}cout << endl;for (i = 0; i < 2 && chparr[0] != chparr[1]; i++) {40 == chparr[i] && (chparr[1 - i] < 5 && (chparr[i] = 0), chparr[1 - i] < 5 || (chparr[i] = 9));}if (chparr[0] > chparr[1]) {system("color 02");cout << "P1胜,记一分" << endl;ip1++;}else if (chparr[0] < chparr[1]) {system("color 02");cout << "P2胜,记一分" << endl;ip2++;}else {system("color 08");cout << "平局,无人记分" << endl;}}system("pause");system("color 07");system("cls");cout << ip1 << " : " << ip2 << endl << "最终获胜的人是:";Sleep(1500);if (ip1 > ip2) {system("color 0A");cout << "P1!" << endl;}else if (ip1 < ip2) {system("color 0A");cout << "P2!" << endl;}else {system("color 08");cout << "无人,请再接再厉!" << endl;}return 0;
}

程序的流程图

是(等待用户按下任意一个键,按下后就把背景色设为黑色,前景色设为白色,并清屏)
否(等待用户按下任意一个键,按下后就把背景色设为黑色,前景色设为白色,并清屏)
等待1.5秒
开始
导入io流
导入Windows.h
释放std命名空间的所有东西
定义整型ir为1
把有两个字符的字符数组chparr全都初始化为0
定义整型ip1为0
定义整型ip2为0
定义整型i为1
输出“欢迎你们来玩这个比大小游戏,在这个游戏中,P1只能输入1~8以内的数和未知数X来跟P2的数比大小,P2也只能输入1~8以内的数和未知数X来跟P1的数比大小,这里面的未知数X的规则是:如果对面的数<5,那么未知数X=0,否则未知数X=9,而如果P1的数大于P2的数,那么P1记一分,如果P2的数大于P1的数,那么P2记一分,如果P1的数等于P2的数,那么谁都不记一分,这样的对局一共有三轮,如果P1的分大于P2的分,那么P1胜利,如果P2的分大于P1的分,那么P2胜利,但如果P1的分等于P1的分,那么P1和P2就平局了,你听明白了吗?\​n\​n”
ir < 4?
输出“第”,ir,“局\​t”,ip1,“ : ”ip2,并换行
设i为1
i < 3?
输出“1 2 3 4 5 6 7 8 X\​n请P”,i和“输入上面的其中一个数字 -> ”
把字符数组chparr的第i减1项设为你输入的内容
清空缓存区
!(chparr[i - 1] > '0' && chparr[i - 1] < '9' || 'X' == chparr[i - 1])
输出“\​033[31;1m输入错误\​033[0m,请P”,i和“重新输入上面的其中一个数字 -> ”
把字符数组chparr的第i减1项设为你输入的内容
清空缓存区
把字符数组chparr的第i减1项自减去字符“0”的ASCII码值
输出“\​n”
i自增1
输出“\​n”
设i为0
i < 2 && chparr[0] != chparr[1]?
40 == chparr[i]?
chparr[1 - i] < 5?
把字符数组chparr的第i项设为0
chparr[1 - i] < 5?
i自增1
chparr[0] > chparr[1]?
把背景色设为黑色,前景色设为绿色
输出“P1胜,记一分\​n”
ip1自增1
ir自增1
输出ip1,“ : ”,ip2和“\​n最终获胜的人是:”
ip1 > ip2?
把背景色设为黑色,前景色设为淡绿色
输出“P1!\​n”
结束
ip1 < ip2?
背景色设为黑色,前景色设为淡绿色
输出“P2!\​n”
把背景色设为黑色,前景色设为灰色
输出“无人,请再接再厉!\​n”
chparr[0] < chparr[1]?
把背景色设为黑色,前景色设为绿色
输出“P2胜,记一分\​n”
ip2自增1
把背景色设为黑色,前景色设为灰色
输出“平局,无人记分\​n”
把字符数组chparr的第i项设为9

程序游玩的效果

比大小游戏

下一篇博客要说的东西

C++3D迷宫

http://www.lryc.cn/news/441308.html

相关文章:

  • PCIe进阶之TL:Memory, I/O, and Configuration Request Rules TPH Rules
  • 【初阶数据结构】一文讲清楚 “堆” 和 “堆排序” -- 树和二叉树(二)(内含TOP-K问题)
  • sqli-lab靶场学习(二)——Less8-10(盲注、时间盲注)
  • Dijkstra算法和BFS算法(单源最短路径)
  • 在WordPress中最佳Elementor主题推荐:专家级指南
  • 关于RabbitMQ消息丢失的解决方案
  • c语言动态内存分配
  • 零基础制作一个ST-LINK V2 附PCB文件原理图 AD格式
  • nginx基础篇(一)
  • 监控系列之-Grafana面板展示及制作
  • 值传递和地址传递
  • Docker vs. containerd 深度剖析容器运行时
  • ARM32 base instruction -- blx
  • sql数据库
  • 2024/9/19 408大题专训之五段式指令流水线题型总结
  • Android SPN/PLMN 显示逻辑简介
  • 1.使用 VSCode 过程中的英语积累 - File 菜单(每一次重点积累 5 个单词)
  • 什么是数字化转型升级?
  • JAVA开源项目 校园美食分享平台 计算机毕业设计
  • MyBatis 增删改查【后端 17】
  • 计算机网络(运输层)
  • Linux 线程控制
  • 内网通3.4.3045广告码、积分码
  • MATLAB给一段数据加宽频噪声的方法(随机噪声+带通滤波器)
  • 网安标委发布敏感个人信息识别指南
  • 音视频入门基础:AAC专题(5)——FFmpeg源码中,判断某文件是否为AAC裸流文件的实现
  • 几何 | 数学专项
  • 学习CubeIDE——定时器开发
  • 【Elasticsearch】-图片向量化存储
  • 二叉树(一)高度与深度