再来一枚简单的CM,欢迎大家回帖交流!
亲爱的坛友们:我这只小菜鸟又回来了,昨天的CM被你们破了:https://www.52pojie.cn/thread-1109222-1-1.html
我觉得上一个CM,程序都在一个cpp文件里面,是我设计上的缺陷,于今日苦思冥想,把这些天学习的C++知识都用上了,
,分为了好几个.cpp文件,又弄出了一个CM,还是C语言和C++混着用,vs 2010编译器编写的,欢迎坛友们再来分析交流!
前言:病毒日渐肆掠,现在在农村都戒严了,天天查体温,不能出去了,遂写此CM,期待战胜疫情。
游戏规则:
你输入1,2,3,4来应对病毒,措施对了,病毒数量消灭一个,如果输入错了,生命值-1,病毒数量+1。
提醒:不要修改游戏数据哈,我做了一个messageBOX弹窗会提醒你的!
胜利:boss生命值为0,且你的生命值不为0。
CM下载地址:
破解成功:游戏胜利得到解压密码,成功解压源码压缩包!
源码下载地址:https://www.lanzouj.com/i9hl9cd
欢迎回帖分析交流,大佬可以尝试追算法!!!
PS:源代码比较乱,但是都有注释,不许笑我哈,才接触编程没两个月,断断续续自学的点c语言和c++知识都用上了!
int sub_401100()
{
int v0; // eax
int result; // eax
bool v2; // zf
int choice; //
v0 = sub_4012C0(std::cout, "请输入你的抗击病毒选择:");
std::basic_ostream<char,std::char_traits<char>>::operator<<(v0, std::endl);
std::basic_istream<char,std::char_traits<char>>::operator>>(std::cin, &choice);
result = choice - 1;
if ( (choice - 1) > 3 )
return result;
result = anti_blood;
if ( choice - 1 != anti_blood % 4 )//正确的选项
{
if ( my_blood == my_blood_cheek )
--my_blood;
if ( anti_blood != anti_blood_cheek )
goto LABEL_10;
result = anti_blood + 1;
goto LABEL_9;
}
if ( anti_blood == anti_blood_cheek )
{
result = anti_blood - 1;
LABEL_9:
anti_blood = result;
}
LABEL_10:
v2 = result == 0;
if ( result < 0 )
{
MessageBoxW(0, &Text, &Caption, 0);
result = anti_blood;
v2 = anti_blood == 0;
}
if ( v2 && anti_blood_cheek == 1 )
return printf("%d%d解压密码是", 0, 1);
if ( (my_blood - 1) <= 2 )
{
anti_blood_cheek = result;
my_blood_cheek = my_blood;
system("cls");
printf("====================《抗击疫情》游戏====================\n");
printf("游戏介绍");
result = sub_401000();//打印游戏界面
}
return result;
}
大概重命名了一下变量,正确答案反正是求4的模
还是ce最快233333 本帖最后由 涛之雨 于 2020-2-19 17:40 编辑
改数据路过。截个图打个码
接着去看看怎么搞个算法23333 01pojie1432顺序 感谢分享。 crack5 发表于 2020-2-19 17:43
01pojie1432顺序
厉害厉害,欢迎分析交流!{:1_893:} 14321432....1432循环五次
方法:反 复 尝 试{:1_918:}
感谢分享 谢谢分享 上将无双 发表于 2020-2-19 17:49
14321432....1432循环五次
方法:反 复 尝 试
厉害了,是个游戏高手,直接通关了!{:301_974:}
页:
[1]
2