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

程序的效果

西蒙说游戏

结尾

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

相关推荐
冬奇Lab1 小时前
一天一个开源项目(第113篇):notebooklm-py - 把 Google NotebookLM 变成可编程 API,还能接入 Claude Code
人工智能·google·开源
字节跳动开源1 小时前
veRL 推出开源 Uni-Agent:为通用 Agent 训练打造统一框架
开源
字节跳动开源2 小时前
Viking AI 搜索 CLI 正式发布:会说话,就能做搜索推荐
数据库·人工智能·开源
PAK向日葵2 小时前
我用 C++ 写了一个轻量级 Python 虚拟机,刚刚开源
c++·python·开源
少年、潜行3 小时前
【开源】基于STM32的无线姿态检测仪设计
stm32·嵌入式硬件·开源·姿态检测仪
枕星而眠3 小时前
数据结构八大排序详解(一):四大简单排序
c语言·数据结构·c++·后端
努力努力再努力wz3 小时前
【Qt入门系列】:按钮组件全解析:从 QAbstractButton 到快捷键事件、单选与复选机制
c语言·开发语言·数据结构·c++·git·qt·github
zhangfeng11336 小时前
主流推理模型架构的协议对比表格,和专利坑 专利埋雷
人工智能·语言模型·自然语言处理·架构·开源·开源协议
一知半解仙6 小时前
Claude Code的跨平台安装教程
java·开发语言·人工智能·开源
老花眼猫7 小时前
数学艺术图案画-曼陀罗单色版(4)
c语言·经验分享·青少年编程·课程设计