C语言猜输赢游戏

2024-06-15 19:12
文章标签 语言 游戏 输赢

本文主要是介绍C语言猜输赢游戏,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

  • 开头
  • 游戏的程序
  • 游戏的流程图
  • 结尾

开头

大家好,我叫这是我58,现在,请你看一下下面的游戏程序。

游戏的程序

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <Windows.h>
int main() {int i = 1;int ia = 0;int ib = 0;int ic = 0;printf("欢迎来玩猜输赢游戏,输入零即可开始,非零即可退出(需要两个人来玩这游戏)\n");scanf("%d",&i);if (!i) {printf("请P1输入“赢”的位置(不要被P2看到)(零在第一位,非零在第二位)\n");scanf("%d",&ia);system("cls");printf("? ?\n\n请P2输入你猜测的“赢”的位置(零在第一位,非零在第二位)(如果猜测正确,则P2赢,否则P1赢)\n");scanf("%d", &ib);system("cls");printf("P2已猜测完成,请P1和P2来等待结果出现\n\n");for (ic = 10; ic > -1; ic--) {switch (ic) {case 1:system("color 0C");break;case 2:system("color 06");break;case 3:system("color 0A");break;default:system("color 0F");break;}printf("%d\n", ic);Sleep(1000);}system("cls");if ((ia || ib) && (!(ia && ib))) { system("color 40"); }else { system("color A0"); }printf("结果已揭晓!请见右面!(P2刚才输入的是%d) > %s\n\n",ib,ia ? "输 赢" : "赢 输");Sleep(1000);printf("现在,赢家是P%d!", (ia || ib) && (!(ia && ib)) ? 1 : 2);Sleep(2500);}system("cls");system("color 0F");return 0;
}

游戏的流程图

相信有些人在看到这里的时候,就不知道这上面的程序是怎样运行的了,没事!只要看一下下面的流程图就好了。

清屏
清屏
break
等待一秒
等待2.5秒,等待好后就清屏
break
等待1秒
break
break
开始
把宏_CRT_SECURE_NO_WARNINGS设为1
导入stdio.h
导入Windows.h
定义整型i为1
定义整型ia为0
定义整型ib为0
定义整型ic为0
输出“欢迎来玩猜输赢游戏,输入零即可开始,非零即可退出(需要两个人来玩这游戏)\n”
把i设为你刚才输入的数
!i?
输出“请P1输入“赢”的位置(不要被P2看到)(零在第一位,非零在第二位)”
把ia设为你刚才输入的数
输入“? ?\n\n请P2输入你猜测的“赢”的位置(零在第一位,非零在第二位)(如果猜测正确,则P2赢,否则P1赢)\n”
把ib设为你刚才输入的数
输入“P2已猜测完成,请P1和P2来等待结果出现\n\n”
把ic设为10
ic>-1?
1==ic?
把控制台的背景色设为黑色,前景色为淡红色
输出ic
(ia || ib) && (!(ia && ib))?
把控制台的背景色设为红色,前景色为黑色
输入“结果已揭晓!请见右面!(P2刚才输入的是%d) > %s\n\n”(“%d”代入ib,如果“ia”为真,那么把“%s”代入“输 赢”,否则把“%s”代入“赢 输”)
输出“现在,赢家是P%d!”(如果“(ia || ib) && (!(ia && ib))”为真,那么把“%d”代入1,否则把“%d”代入2)
把控制台的背景色设为黑色,前景色为亮白色
结束
2==ic?
把控制台的背景色设为黑色,前景色为黄色
ic自减1
3==ic?
把控制台的背景色设为黑色,前景色为淡绿色
把控制台的背景色设为黑色,前景色为亮白色
把控制台的背景色设为黑色,前景色为亮白色

结尾

看完之后,你想玩这个游戏吗?如果想玩的话,就可以把上面的“游戏的程序”里的程序复制下来,然后复制在关于C语言的编译器里,最后运行起来,就可以玩这个游戏了。当然,如果你不想或者不能玩到这个游戏,那就可以等一会儿,或者也可以直接评论或者投票来互动一下我哦。

这篇关于C语言猜输赢游戏的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1064331

相关文章

C语言小项目实战之通讯录功能

《C语言小项目实战之通讯录功能》:本文主要介绍如何设计和实现一个简单的通讯录管理系统,包括联系人信息的存储、增加、删除、查找、修改和排序等功能,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录功能介绍:添加联系人模块显示联系人模块删除联系人模块查找联系人模块修改联系人模块排序联系人模块源代码如下

基于Go语言实现一个压测工具

《基于Go语言实现一个压测工具》这篇文章主要为大家详细介绍了基于Go语言实现一个简单的压测工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录整体架构通用数据处理模块Http请求响应数据处理Curl参数解析处理客户端模块Http客户端处理Grpc客户端处理Websocket客户端

使用SQL语言查询多个Excel表格的操作方法

《使用SQL语言查询多个Excel表格的操作方法》本文介绍了如何使用SQL语言查询多个Excel表格,通过将所有Excel表格放入一个.xlsx文件中,并使用pandas和pandasql库进行读取和... 目录如何用SQL语言查询多个Excel表格如何使用sql查询excel内容1. 简介2. 实现思路3

Go语言实现将中文转化为拼音功能

《Go语言实现将中文转化为拼音功能》这篇文章主要为大家详细介绍了Go语言中如何实现将中文转化为拼音功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 有这么一个需求:新用户入职 创建一系列账号比较麻烦,打算通过接口传入姓名进行初始化。想把姓名转化成拼音。因为有些账号即需要中文也需要英

Go语言使用Buffer实现高性能处理字节和字符

《Go语言使用Buffer实现高性能处理字节和字符》在Go中,bytes.Buffer是一个非常高效的类型,用于处理字节数据的读写操作,本文将详细介绍一下如何使用Buffer实现高性能处理字节和... 目录1. bytes.Buffer 的基本用法1.1. 创建和初始化 Buffer1.2. 使用 Writ

深入理解C语言的void*

《深入理解C语言的void*》本文主要介绍了C语言的void*,包括它的任意性、编译器对void*的类型检查以及需要显式类型转换的规则,具有一定的参考价值,感兴趣的可以了解一下... 目录一、void* 的类型任意性二、编译器对 void* 的类型检查三、需要显式类型转换占用的字节四、总结一、void* 的

C语言线程池的常见实现方式详解

《C语言线程池的常见实现方式详解》本文介绍了如何使用C语言实现一个基本的线程池,线程池的实现包括工作线程、任务队列、任务调度、线程池的初始化、任务添加、销毁等步骤,感兴趣的朋友跟随小编一起看看吧... 目录1. 线程池的基本结构2. 线程池的实现步骤3. 线程池的核心数据结构4. 线程池的详细实现4.1 初

Python开发围棋游戏的实例代码(实现全部功能)

《Python开发围棋游戏的实例代码(实现全部功能)》围棋是一种古老而复杂的策略棋类游戏,起源于中国,已有超过2500年的历史,本文介绍了如何用Python开发一个简单的围棋游戏,实例代码涵盖了游戏的... 目录1. 围棋游戏概述1.1 游戏规则1.2 游戏设计思路2. 环境准备3. 创建棋盘3.1 棋盘类

科研绘图系列:R语言扩展物种堆积图(Extended Stacked Barplot)

介绍 R语言的扩展物种堆积图是一种数据可视化工具,它不仅展示了物种的堆积结果,还整合了不同样本分组之间的差异性分析结果。这种图形表示方法能够直观地比较不同物种在各个分组中的显著性差异,为研究者提供了一种有效的数据解读方式。 加载R包 knitr::opts_chunk$set(warning = F, message = F)library(tidyverse)library(phyl

透彻!驯服大型语言模型(LLMs)的五种方法,及具体方法选择思路

引言 随着时间的发展,大型语言模型不再停留在演示阶段而是逐步面向生产系统的应用,随着人们期望的不断增加,目标也发生了巨大的变化。在短短的几个月的时间里,人们对大模型的认识已经从对其zero-shot能力感到惊讶,转变为考虑改进模型质量、提高模型可用性。 「大语言模型(LLMs)其实就是利用高容量的模型架构(例如Transformer)对海量的、多种多样的数据分布进行建模得到,它包含了大量的先验