事杨玉环 发表于 2024-3-3 00:18:57

【原创】【更新】【Cpp】手搓一张记忆小游戏

#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <time.h>
#include <string.h>
#define cls() system("cls")
int rand2(int max,clock_t c) {
      int i=0;
      for(; (i=rand())>max;);
      return i;
}
int main(void) {
      clock_t m = clock();
      char *str,*ans;
      unsigned int level=1,i;
      printf("记忆游戏! 按回车键开始");
      getchar();
      cls();      
      str=(char*)malloc(sizeof(char)*4);
      ans=(char*)malloc(sizeof(char)*4);
      for(;;) {
                m = clock();
                srand(m);
                for(i=0; i<level+2; i++) {
                        //printf("%lu",(unsigned long int)m)
                        if(rand2(1,m)) str='a';
                        else str='b';
                }
                str='\0';
                printf(str);
                //getchar();
                Sleep(5000);
                cls();
                scanf("%s",ans);
                //printf("%s %s",str,ans);
                if(!strcmp(str,ans)){
                        level++;
                        printf("正确!你的等级为%u",level);
                        Sleep(2000);
                        cls();
                }else{
                        printf("\nOh no,错误了哦,您的等级是%u",level);
                        getchar();
                        return 0;
                }
                str=(char*)realloc(str,sizeof(char)*(level+3));
                ans=(char*)realloc(ans,sizeof(char)*(level+3));
      }
      return 0;
}



用最最基础的C++系统编得,适合初学者模仿。
*:此文件以CC-BY-4.0协议发布

水滴236 发表于 2024-3-3 00:44:44

看到这个帖我才知道,原来论坛有一个编辑专区的板块,是新加的吗?我才知道

NanaSakura 发表于 2024-3-3 01:51:14

首先这是纯C,不是C++
然后就是楼主至少得写写你的思路吧,就一个源码放在这里对新人简直劝退

teddyxlandlee 发表于 2024-3-3 09:32:07

为什么rand2函数要传入clock_t参数?

wzxzgr 发表于 2024-3-3 22:27:43

emm,没有编写过程
页: [1]
查看完整版本: 【原创】【更新】【Cpp】手搓一张记忆小游戏