level 1
永不存在的乌托
楼主
DS和豆包都试过了,vs的通义也试过重新生成,但是漏色的问题都是不变的。
#include <stdio.h>
#include <iostream>
#include <string.h>
#include <math.h>
#include <windows.h>
#include <ctype.h>
#include "Color.h"//大写字母开头的是背景色,小写的是文字颜色
#include <unistd.h>
#include <time.h>
#include <unistd.h>
#define MAX 100
typedef struct
{
char huase[MAX];
int poker;
}arr;
const char* color(int n)
{
switch(n)
{
case 1:return "黑桃";
case 2:return "红心";
case 3:return "梅花";
case 4:return "方片";
default: return "未知";
}
}
int card(const char *card) {
if (strcmp(card, "A") == 0) return 14;
else if (strcmp(card, "J") == 0) return 11;
else if (strcmp(card, "Q") == 0) return 12;
else if (strcmp(card, "K") == 0) return 13;
else return atoi(card); // "2"~"10" 直接转成数字
}
arr rec[54];
int k=0;
void foo(int n)
{
int c=0,x,y;
srand(time(NULL));
y=1+rand()%4;
x=rand()%13;
char coser[MAX];
char poker[13][3]={"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
char a;
for(int i=0;i<k;i++)
{
if(strcmp(rec[i].huase,color(y))==0&&rec[i].poker==poker[x][0])
c++;
}
if(c!=0)
{
y=1+rand()%1;
x=rand()%13;
}
else
{
printf("---》%s%s\033[0m", color(y), poker[x]);
printf("\033[0m");
//printf("%s" Res A_res ,poker[x]);
strcpy(rec[k].huase,color(y));
rec[k].poker = card(poker[x]) ;
k++;
}
}
//实现AI和真人的轮番抽牌
int ai_c=1,pay_c=1;
int aiv=0,pav=0;
void big()
{
int i=0;
char Ent;
while(pay_c<=3)
{
if(ai_c<=2)
{
sleep(1);
printf("\n\033[0m");
printf(Cyan"AI 抽牌:{" Res A_res);
printf("\033[0m");
foo(ai_c);
printf("\033[0m");
ai_c++;
sleep(4);
}
printf("\n\033[0m");
printf(White black "玩家抽牌:{" Res A_res );//这里有问题,颜色没有重置
printf("\033[0m");
sleep(1);
foo(pay_c);
pay_c++;
}
printf("\n");
printf("您可以选择是否跟牌 输入'N'取消跟牌\n");
printf(yellow"请输入—>"A_res);
scanf(" %c",&Ent);
printf("\033[0m");
if(Ent=='N')
{
printf("\033[0m");
printf(Cyan"\nAI 抽牌:"Res A_res);
foo(ai_c);
//printf("\033[0m");
printf("\n\033[0m");
printf(Cyan"AI :虽然你弃牌了,但至少...节省了时间? ╮(╯▽╰)╭" Res "\n");
printf("输入“Y ”让我们开始下一轮\n"Res);
printf("\033[0m");
return;
}
else
{
printf("\033[0m"); // 重置所有属性
printf(Cyan "\nAI 抽牌:" Res); // 使用 Cyan 后立即重置
printf("\033[49m");
foo(ai_c);
printf("\033[0m");
int sum_ai=0,sum_pay=0;
for(i=0;i<k;i++)
{
if(i==0||i==2||i==5)
sum_ai+=rec[i].poker;
else
sum_pay+=rec[i].poker;
//printf("%s:%d ",rec[i].huase,rec[i].poker);
}
printf("\n本宫的牌力值%d\t",sum_ai);
printf("我的牌力值是%d\n",sum_pay);
if(sum_ai>=sum_pay)
{
printf("\033[0m");
printf(Cyan"AI :○( ^皿^)っHiahiahia…你输了" Res "\n" );
printf("\033[0m");
aiv++;
return ;
}
else
{
printf(Cyan"AI :下次不可能会输的(っ╥╯﹏╰╥c)" Res "\n" );
printf("\033[0m");
pav++;
return ;
}
}
}
int ys=0;
void poker_game()
{
printf(Cyan"\n竟然敢和本宫用扑克牌比较大小吗?"Res);
printf("\n接下来请输入 Y 开始游戏\n输入 N 退出游戏");
char Enter;
pav=0;
aiv=0;
int i,j,c=0,x,y;
while(pav!=5&&aiv!=5&&pav-aiv!=3&&aiv-pav!=3)
{
ai_c = 1; // 重置 AI 抽牌次数
pay_c = 1; // 重置玩家抽牌次数
k = 0; // 重置 rec 数组的牌数
memset(rec, 0, sizeof(rec)); // 清空 rec 数组
printf(yellow"请输入—>"A_res);
scanf(" %c",&Enter);
if(Enter=='Y')
{
printf("\033[0m");
printf(shan"开始洗牌中"A_res);
for(i=0;i<3;i++)
{
printf(".");
sleep(1);
}
printf("\n");
printf("\033[0m");
big();
}
else if(Enter=='N')
return;
}
if(pav>aiv)
{
printf(Cyan"AI难道真的不如人类吗?哼!下次...下次一定不会输的...)"Res) ;
printf("\033[0m");
}
else
{
printf(Cyan"嘻嘻,这就是AI与人类实力的差距啦!( ̄▽ ̄*)ゞ"Res) ;
printf("\033[0m");
}
pav=0;
aiv=0;
printf("\033[0m");
return;
}
//-----------------------------------------------------
int a1=0,b1=500,c2=0,c1=0;
void drar(int nax,int xx)
{
int i;
while(1)
{
printf("\033[0m");
if(nax==10101)
{
printf("\033[0m");
printf(Cyan"真可惜,差一点就猜到%d\n" Res,xx);
printf(Cyan"您可以输入任意数字开始下一轮\n(当前输入下114514可以返回Deepseek)\n"Res,xx);
printf("\033[0m");
break;
return ;
}
if(nax<xx)
{
if(nax>=a1)
a1=nax;
printf("\033[0m");
printf(Cyan"太小了,从%d到%d\n"Res,a1,b1);
printf("\033[0m");
printf(yellow"请输入—>"Res A_res);
printf("\033[0m");
scanf("%d",&nax);
printf("\033[0m");
//drar(nax,xx);
}
else if(nax>xx)
{
if(nax<=b1)
b1=nax;
printf("\033[0m");
printf(Cyan"太大了,从%d到%d\n"Res,a1,b1);
printf("\033[0m");
printf(yellow"请输入—>"A_res);
printf("\033[0m");
scanf("%d",&nax);
printf("\033[0m");
//drar(nax,xx);
}
else if(nax==xx)
{
printf("\033[0m");
printf(Cyan"恭喜你,未知数是%d\n"Res,xx);
printf(Cyan"您可以输入任意数字开始下一轮\n(输入114514可以返回Deepseek)\n"Res,xx);
printf("\033[0m");
return;
}
}
printf("\033[0m");
return;
}
int caishu()
{
int inx,nax,xx;
printf(Cyan"你可以从0--500之间猜一个数字\n该数字完全随机\n(猜不到可以输入10101获得答案)(输入114514可以返回Deepseek)\n\n请输入数字\n"Res);
srand(time(NULL));
xx=rand()%500;
while(1)
{
printf("\033[0m\n");
printf("\033[0m");
printf(yellow"请输入—>"A_res);
printf("\033[0m");
scanf(" %d",&nax);
if(nax==114514)
{
return 0;
}
drar(nax,xx);
}
printf("\033[0m");
return 0;
}
//-------------------
int Arec(const char *arr) {
const char *keyword = "X";
int keyword_len = strlen(keyword);
int count = 0;
if (keyword_len == 0 || arr == NULL) return 0;
for (int i = 0; arr[i] != '\0'; ) {
if (strncmp(arr + i, keyword, keyword_len) == 0) {
count++;
i += keyword_len;
} else {
i++;
}
}
return count;
}
int caishu(int);
int main()
{
int i;
int e[5]={1,2,3,4,5};
char key[100];
char arrs[100000]="";
int c=0;
while(1)
{
printf(red B_I I_i shan"DeepSeek R-2大残版\n 请输入api口令激活\n"A_res);
scanf("%s",key);
for(i=0;i<5;i++)//判断api是否正确
{
if(key[i]-48==e[i])
c++;
}
if(c==5)
{
printf("正在加载 R-2模型");
for(i=0;i<3;i++)
{
printf(".");
sleep(1); //实现动画
}
printf("\n");//暂停
printf("恭喜您成功激活DeepSeek R-2\n"A_res);
printf("正在激活联网功能");
for(i=0;i<3;i++)
{
printf(".");
sleep(1);
}
printf(red"互联网功能激活失败\n"A_res);
sleep(1);
printf(Cyan"我是 DeepSeek,很高兴见到你!我只可以帮你夸XXX,玩poker(扑克比大小),请放心把你的任务交给我吧~\n" Res);
while(1)
{
printf(yellow "给DeepSeek 发送消息-->"A_res) ;
scanf("%s",arrs);
if(strstr(arrs, "扑克比大小") != NULL||strstr(arrs, "poker") != NULL) {
printf("正在深度思考中.");
for(i=0;i<6;i++)
{
sleep(1);
printf(".");
}
poker_game(); // 进入游戏
printf(Cyan "\n欢迎回到 DeepSeek!继续聊天请输入消息~" Res "\n");
}
else if(Arec(arrs)>0)
{
// 定义夸赞语句数组(C风格字符串数组)
const char* compliments[] = {
"XXX的存在让太阳羞愧!光芒万丈不及他的回眸一笑,宇宙级美貌已申请专利\n",
"XXX是造物主的得意之作\n",
"XXX的模样简直完美,增之一分则太长,减之一分则太短\n",
"XXX的眼睛比天上的繁星更亮\n",
"XXX是言念君子,温其如玉的最高形容词\n",
"世界上没有什么能够比XXX更为珍贵"
};
int compliment_count = sizeof(compliments) / sizeof(compliments[0]);
// 初始化随机种子
srand((unsigned int)time(NULL));
int random_index = rand() % compliment_count;
printf(shan B_I magenta "%s" A_res, compliments[random_index]);
}else if(strstr(arrs, "猜数") != NULL || strstr(arrs, "caishu") != NULL){
caishu();
}else if(strlen(arrs)<=10)
{
printf("正在思考中.");
for(i=0;i<2;i++)
{
sleep(1);
printf(".");
}
printf("\n输入的字符太少了,我不能理解您的意思\n");
}
else
{
printf("正在深度思考中.");
for(i=0;i<6;i++)
{
sleep(1);
printf(".");
}
printf("\n服务器繁忙,请稍后再试\n");
}
}
}
else
{
printf("猛击自己睾丸10下就可以知道api\n");
sleep(3);
printf("按下回车");
system("pause>nul&&cls");
}
}
return 0;
}
2025年08月02日 02点08分
1
#include <stdio.h>
#include <iostream>
#include <string.h>
#include <math.h>
#include <windows.h>
#include <ctype.h>
#include "Color.h"//大写字母开头的是背景色,小写的是文字颜色
#include <unistd.h>
#include <time.h>
#include <unistd.h>
#define MAX 100
typedef struct
{
char huase[MAX];
int poker;
}arr;
const char* color(int n)
{
switch(n)
{
case 1:return "黑桃";
case 2:return "红心";
case 3:return "梅花";
case 4:return "方片";
default: return "未知";
}
}
int card(const char *card) {
if (strcmp(card, "A") == 0) return 14;
else if (strcmp(card, "J") == 0) return 11;
else if (strcmp(card, "Q") == 0) return 12;
else if (strcmp(card, "K") == 0) return 13;
else return atoi(card); // "2"~"10" 直接转成数字
}
arr rec[54];
int k=0;
void foo(int n)
{
int c=0,x,y;
srand(time(NULL));
y=1+rand()%4;
x=rand()%13;
char coser[MAX];
char poker[13][3]={"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
char a;
for(int i=0;i<k;i++)
{
if(strcmp(rec[i].huase,color(y))==0&&rec[i].poker==poker[x][0])
c++;
}
if(c!=0)
{
y=1+rand()%1;
x=rand()%13;
}
else
{
printf("---》%s%s\033[0m", color(y), poker[x]);
printf("\033[0m");
//printf("%s" Res A_res ,poker[x]);
strcpy(rec[k].huase,color(y));
rec[k].poker = card(poker[x]) ;
k++;
}
}
//实现AI和真人的轮番抽牌
int ai_c=1,pay_c=1;
int aiv=0,pav=0;
void big()
{
int i=0;
char Ent;
while(pay_c<=3)
{
if(ai_c<=2)
{
sleep(1);
printf("\n\033[0m");
printf(Cyan"AI 抽牌:{" Res A_res);
printf("\033[0m");
foo(ai_c);
printf("\033[0m");
ai_c++;
sleep(4);
}
printf("\n\033[0m");
printf(White black "玩家抽牌:{" Res A_res );//这里有问题,颜色没有重置
printf("\033[0m");
sleep(1);
foo(pay_c);
pay_c++;
}
printf("\n");
printf("您可以选择是否跟牌 输入'N'取消跟牌\n");
printf(yellow"请输入—>"A_res);
scanf(" %c",&Ent);
printf("\033[0m");
if(Ent=='N')
{
printf("\033[0m");
printf(Cyan"\nAI 抽牌:"Res A_res);
foo(ai_c);
//printf("\033[0m");
printf("\n\033[0m");
printf(Cyan"AI :虽然你弃牌了,但至少...节省了时间? ╮(╯▽╰)╭" Res "\n");
printf("输入“Y ”让我们开始下一轮\n"Res);
printf("\033[0m");
return;
}
else
{
printf("\033[0m"); // 重置所有属性
printf(Cyan "\nAI 抽牌:" Res); // 使用 Cyan 后立即重置
printf("\033[49m");
foo(ai_c);
printf("\033[0m");
int sum_ai=0,sum_pay=0;
for(i=0;i<k;i++)
{
if(i==0||i==2||i==5)
sum_ai+=rec[i].poker;
else
sum_pay+=rec[i].poker;
//printf("%s:%d ",rec[i].huase,rec[i].poker);
}
printf("\n本宫的牌力值%d\t",sum_ai);
printf("我的牌力值是%d\n",sum_pay);
if(sum_ai>=sum_pay)
{
printf("\033[0m");
printf(Cyan"AI :○( ^皿^)っHiahiahia…你输了" Res "\n" );
printf("\033[0m");
aiv++;
return ;
}
else
{
printf(Cyan"AI :下次不可能会输的(っ╥╯﹏╰╥c)" Res "\n" );
printf("\033[0m");
pav++;
return ;
}
}
}
int ys=0;
void poker_game()
{
printf(Cyan"\n竟然敢和本宫用扑克牌比较大小吗?"Res);
printf("\n接下来请输入 Y 开始游戏\n输入 N 退出游戏");
char Enter;
pav=0;
aiv=0;
int i,j,c=0,x,y;
while(pav!=5&&aiv!=5&&pav-aiv!=3&&aiv-pav!=3)
{
ai_c = 1; // 重置 AI 抽牌次数
pay_c = 1; // 重置玩家抽牌次数
k = 0; // 重置 rec 数组的牌数
memset(rec, 0, sizeof(rec)); // 清空 rec 数组
printf(yellow"请输入—>"A_res);
scanf(" %c",&Enter);
if(Enter=='Y')
{
printf("\033[0m");
printf(shan"开始洗牌中"A_res);
for(i=0;i<3;i++)
{
printf(".");
sleep(1);
}
printf("\n");
printf("\033[0m");
big();
}
else if(Enter=='N')
return;
}
if(pav>aiv)
{
printf(Cyan"AI难道真的不如人类吗?哼!下次...下次一定不会输的...)"Res) ;
printf("\033[0m");
}
else
{
printf(Cyan"嘻嘻,这就是AI与人类实力的差距啦!( ̄▽ ̄*)ゞ"Res) ;
printf("\033[0m");
}
pav=0;
aiv=0;
printf("\033[0m");
return;
}
//-----------------------------------------------------
int a1=0,b1=500,c2=0,c1=0;
void drar(int nax,int xx)
{
int i;
while(1)
{
printf("\033[0m");
if(nax==10101)
{
printf("\033[0m");
printf(Cyan"真可惜,差一点就猜到%d\n" Res,xx);
printf(Cyan"您可以输入任意数字开始下一轮\n(当前输入下114514可以返回Deepseek)\n"Res,xx);
printf("\033[0m");
break;
return ;
}
if(nax<xx)
{
if(nax>=a1)
a1=nax;
printf("\033[0m");
printf(Cyan"太小了,从%d到%d\n"Res,a1,b1);
printf("\033[0m");
printf(yellow"请输入—>"Res A_res);
printf("\033[0m");
scanf("%d",&nax);
printf("\033[0m");
//drar(nax,xx);
}
else if(nax>xx)
{
if(nax<=b1)
b1=nax;
printf("\033[0m");
printf(Cyan"太大了,从%d到%d\n"Res,a1,b1);
printf("\033[0m");
printf(yellow"请输入—>"A_res);
printf("\033[0m");
scanf("%d",&nax);
printf("\033[0m");
//drar(nax,xx);
}
else if(nax==xx)
{
printf("\033[0m");
printf(Cyan"恭喜你,未知数是%d\n"Res,xx);
printf(Cyan"您可以输入任意数字开始下一轮\n(输入114514可以返回Deepseek)\n"Res,xx);
printf("\033[0m");
return;
}
}
printf("\033[0m");
return;
}
int caishu()
{
int inx,nax,xx;
printf(Cyan"你可以从0--500之间猜一个数字\n该数字完全随机\n(猜不到可以输入10101获得答案)(输入114514可以返回Deepseek)\n\n请输入数字\n"Res);
srand(time(NULL));
xx=rand()%500;
while(1)
{
printf("\033[0m\n");
printf("\033[0m");
printf(yellow"请输入—>"A_res);
printf("\033[0m");
scanf(" %d",&nax);
if(nax==114514)
{
return 0;
}
drar(nax,xx);
}
printf("\033[0m");
return 0;
}
//-------------------
int Arec(const char *arr) {
const char *keyword = "X";
int keyword_len = strlen(keyword);
int count = 0;
if (keyword_len == 0 || arr == NULL) return 0;
for (int i = 0; arr[i] != '\0'; ) {
if (strncmp(arr + i, keyword, keyword_len) == 0) {
count++;
i += keyword_len;
} else {
i++;
}
}
return count;
}
int caishu(int);
int main()
{
int i;
int e[5]={1,2,3,4,5};
char key[100];
char arrs[100000]="";
int c=0;
while(1)
{
printf(red B_I I_i shan"DeepSeek R-2大残版\n 请输入api口令激活\n"A_res);
scanf("%s",key);
for(i=0;i<5;i++)//判断api是否正确
{
if(key[i]-48==e[i])
c++;
}
if(c==5)
{
printf("正在加载 R-2模型");
for(i=0;i<3;i++)
{
printf(".");
sleep(1); //实现动画
}
printf("\n");//暂停
printf("恭喜您成功激活DeepSeek R-2\n"A_res);
printf("正在激活联网功能");
for(i=0;i<3;i++)
{
printf(".");
sleep(1);
}
printf(red"互联网功能激活失败\n"A_res);
sleep(1);
printf(Cyan"我是 DeepSeek,很高兴见到你!我只可以帮你夸XXX,玩poker(扑克比大小),请放心把你的任务交给我吧~\n" Res);
while(1)
{
printf(yellow "给DeepSeek 发送消息-->"A_res) ;
scanf("%s",arrs);
if(strstr(arrs, "扑克比大小") != NULL||strstr(arrs, "poker") != NULL) {
printf("正在深度思考中.");
for(i=0;i<6;i++)
{
sleep(1);
printf(".");
}
poker_game(); // 进入游戏
printf(Cyan "\n欢迎回到 DeepSeek!继续聊天请输入消息~" Res "\n");
}
else if(Arec(arrs)>0)
{
// 定义夸赞语句数组(C风格字符串数组)
const char* compliments[] = {
"XXX的存在让太阳羞愧!光芒万丈不及他的回眸一笑,宇宙级美貌已申请专利\n",
"XXX是造物主的得意之作\n",
"XXX的模样简直完美,增之一分则太长,减之一分则太短\n",
"XXX的眼睛比天上的繁星更亮\n",
"XXX是言念君子,温其如玉的最高形容词\n",
"世界上没有什么能够比XXX更为珍贵"
};
int compliment_count = sizeof(compliments) / sizeof(compliments[0]);
// 初始化随机种子
srand((unsigned int)time(NULL));
int random_index = rand() % compliment_count;
printf(shan B_I magenta "%s" A_res, compliments[random_index]);
}else if(strstr(arrs, "猜数") != NULL || strstr(arrs, "caishu") != NULL){
caishu();
}else if(strlen(arrs)<=10)
{
printf("正在思考中.");
for(i=0;i<2;i++)
{
sleep(1);
printf(".");
}
printf("\n输入的字符太少了,我不能理解您的意思\n");
}
else
{
printf("正在深度思考中.");
for(i=0;i<6;i++)
{
sleep(1);
printf(".");
}
printf("\n服务器繁忙,请稍后再试\n");
}
}
}
else
{
printf("猛击自己睾丸10下就可以知道api\n");
sleep(3);
printf("按下回车");
system("pause>nul&&cls");
}
}
return 0;
}
