C语言西蒙说游戏

目录

开头

大家好,我叫这是我58。今天,我们来看一下我用C语言编译的西蒙说游戏。

程序

c 复制代码
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <Windows.h>
int simonsays(char* str) {
	int ia = 0;
	int iflag = 1;
	printf("西蒙说");
	Sleep(1000);
	for (system("cls"), ia = 0; '\0' != str[ia]; ia++) {
		printf("%c", str[ia]);
		Sleep(500);
		system("cls");
		Sleep(100);
	}
	for (ia = 0; '\0' != str[ia]; ia++) {
		if (str[ia] != (getchar())) {
			iflag = 0;
			break;
		}
	}
	return ('\n' != getchar() && (iflag = 0)), iflag;
}
int main() {
	printf("欢迎你来玩这个西蒙说游戏,在这个游戏中,你需要在看见"西蒙说"这三个字之后,就要开始记后面的字母了,这些字母有"R""B""Y"和"G",而当要记的字母全部出现之后,就要把刚才记过的字母一次性输入进去,如果输入进去的字母与刚才显示的字母一模一样,那就继续玩下去,反之,就结束这一轮的游戏,这就是这个西蒙说游戏的规则");
	Sleep(7000);
	char str[99999] = "";
	char stra[5] = "RBYG";
	int i = 0;
	int is = 1;
	for (system("cls"), srand(time(NULL)), i = 0; is; system("cls"), i++) {
		str[i] = stra[rand() % 4];
		is = simonsays(str);
	}
	system("cls");
	printf("游戏已结束\n");
	return 0;
}

程序的流程图

等待7秒 清屏 是 清屏 否(清屏) 开始 把宏_CRT_SECURE_NO_WARNINGS定义为1 导入stdio.h 导入stdlib.h 导入time.h 导入Windows.h 定义simonsays函数 输出"欢迎你来玩这个西蒙说游戏,在这个游戏中,你需要在看见"西蒙说"这三个字之后,就要开始记后面的字母了,这些字母有"R""B""Y"和"G",而当要记的字母全部出现之后,就要把刚才记过的字母一次性输入进去,如果输入进去的字母与刚才显示的字母一模一样,那就继续玩下去,反之,就结束这一轮的游戏,这就是这个西蒙说游戏的规则" 把一个有99999个字符的字符串str初始化为空字符串 把一个有5个字符的字符串stra初始化为"RBYG" 定义i为0 定义is为1 设置随机数的种子,种子由时间戳决定 设i为0 is? 把str的第i项设为stra的第随机值模上一个4的项 把is设为simonsays函数的返回值,simonsays函数的参数为str i自增1 输出"游戏已结束\n" 结束
simonsays函数 等待1秒,等好后就清屏 是 等待0.5秒,等待好后就清屏,之后就等待0.1秒 否 是 是 break 是 返回iflag 否 否 否(直接返回ifalg) 结束 开始 定义ia为0 定义iflag为1 输出"西蒙说" 设ia为0 '\0' != str[ia]? 设ia为0 ia自增1 '\0' != str[ia]? str[ia] != (getchar())? 设iflag为0 '\n' != getchar()? 设iflag为0 ia自增1

程序的效果

西蒙说游戏

结尾

看到这里了,如果你喜欢这篇博客,可以评论来互动一下我哦。

相关推荐
野生的编程萌新5 分钟前
从冒泡到快速排序:探索经典排序算法的奥秘(二)
c语言·开发语言·数据结构·c++·算法·排序算法
qwertyuiop_i3 小时前
使用CMAKE-GU生成Visual Studio项目
visual studio·qt6·sln
张3蜂7 小时前
Stagehand深度解析:从开源自动化工具到企业级RPA平台的演进之路
开源·自动化·rpa
谱写秋天11 小时前
FreeRTOS中断服务程序(ISR)详细讲解
c语言·freertos·isr
ajassi200012 小时前
开源 Arkts 鸿蒙应用 开发(十六)自定义绘图控件--波形图
华为·开源·harmonyos
qq_5469372713 小时前
一款开源的远程桌面软件,旨在为用户提供流畅的游戏体验,支持 2K 分辨率、60 FPS,延迟仅为 40ms。
游戏
How_doyou_do13 小时前
关于截屏时实现游戏暂停以及本地和上线不同步问题
游戏
李昕壑13 小时前
CS2服务器是何方神圣
游戏
A尘埃14 小时前
金融项目高可用分布式TCC-Transaction(开源框架)
分布式·金融·开源
GUET_一路向前14 小时前
【C语言】解释形参void *data用法
c语言·开发语言·通用指针