希望点赞+关注
蟹蟹~~~
先来看几张图片
# include <iostream>
# include <string>
# include <ctime>
# include <Windows.h>
//函数的声明
void Gryffindor();
void Ravenclaw();
void Hufflepuff();
void Slytherin();
//我们需要制作一个秘钥
int judge = 0;
using namespace std;
//分数累计模板
void Score(int score)
{
static int sum = 0;
sum = sum + score;
if (judge == 1)
{
if (sum >= 0 && sum <= 100)
Ravenclaw();
if (sum > 100 && sum <= 300)
Gryffindor();
if (sum > 300 && sum <= 900)
Hufflepuff();
if (sum > 900)
Slytherin();
}
}
//万能的问题模板
void EveryProblem(string problem[5])
{
problem[0] = "我想要知道你最喜欢的颜色是……";
problem[1] = "我想知道你来霍格沃茨学校的目的是……";
problem[2] = "我想知道你对魔法了解多少……";
problem[3] = "我想知道你认为下面哪种动物对你来说最亲切……";
problem[4] = "如果让你出生在中土世界……我是说如果……你会选择做些什么……";
}
//问题函数
void Problem_gram()
{
string problem[5];//定义接收问题的函数
char select;//定义选择的变量
EveryProblem(problem);
for (int count = 1; count <= 5; count++)
{
int i = rand() % 7;//我们想引入一个随机数来打乱问题的顺序
switch (i)
{
case 0:
cout << count << "、" << problem[0] << endl;
Sleep(2000);
cout << "A、蓝色\tB、红色\nC、黄色\tD、银色\n";
cout << "请输入您的选择" << "\t";
cin >> select;
Sleep(1000);
switch (select)
{
case 'A':
Score(0);
cout << "(大声地)拉文……不行,我得保守……我还得继续冷静思考" << endl;;
break;
case 'B':
Score(50);
cout << "(大声地)格兰芬……不行,我得保守……我还得继续冷静思考" << endl;
break;
case 'C':
Score(100);
cout << "(大声地)赫奇……不行,我得保守……我还得继续冷静思考" << endl;
break;
case 'D':
Score(200);
cout << "(大声地)斯莱特……不行,我得保守……我还得继续冷静思考" << endl;
break;
}
Sleep(2000);
system("cls");
break;
case 1:
cout << count << "、" << problem[1] << endl;
Sleep(2000);
cout << "A、快乐的去冒险\tB、学习巫术\nC、结交很多的魔法朋友\tD、很难选,我觉得以上都是我来这里的原因" << endl;;
cout << "请输入您的选择" << "\t";
cin >> select;
switch (select)
{
case 'A':
Score(50);
cout << "哈哈,在这里你会得到快乐的……" << endl;
break;
case 'B':
Score(200);
cout << "额,我好像是明知故问……" << endl;
break;
case 'C':
Score(100);
cout << "这里的教授和同学们都很好相处哟……" << endl;
break;
case 'D':
int n = rand() % 100 + 1;
Score(n);
cout << "你看样子很随便呀……再这么随便我就把你随机分了(大声地)" << endl;
break;
}
Sleep(2000);
system("cls");
break;
case 2:
cout << count << "、" << problem[2] << endl;
Sleep(2000);
cout << "A、一概不知\tB、我父母之前都在这里上过学,他们教会了我一些\nC、我了解很多,比如“除你武器”之类的\tD、我几乎快把低年级的课本翻烂了" << endl;;
cout << "请输入您的选择" << "\t";
cin >> select;
switch (select)
{
case 'A':
cout << "额,我好像是明知故问……" << endl;
Score(200);
break;
case 'B':
cout << "是嘛?那看来你有机会能把你的父母变成师哥师姐咯……哈哈哈……" << endl;
Score(100);
break;
case 'C':
cout << "哦,聪明的孩子,我大概知道你该分去哪里了……" << endl;
Score(0);
break;
case 'D':
cout << "哦,勤奋的孩子,我大概知道你该分去哪里了……" << endl;
Score(50);
break;
}
Sleep(2000);
system("cls");
break;
case 3:
cout << count << "、" << problem[3] << endl;
Sleep(2000);
cout << "A、狮子\tB、鹰\nC、蛇\tD、地鼠" << endl;;
cout << "请输入您的选择" << "\t";
cin >> select;
switch (select)
{
case 'A':
cout << "看来答案已经浮出了水面……" << endl;
Score(50);
break;
case 'B':
cout << "看来答案已经浮出了水面……" << endl;
Score(0);
break;
case 'C':
cout << "看来答案已经浮出了水面……" << endl;
Score(200);
break;
case 'D':
cout << "看来答案已经浮出了水面……" << endl;
Score(100);
break;
}
Sleep(2000);
system("cls");
break;
case 4:
cout << count << "、" << problem[4] << endl;
Sleep(2000);
cout << "A、我想成为富裕的国王\tB、我想成为一位征服世界的勇士\nC、我想成为一位游行四方的谋士,四方皆为自己的朋友\tD、我更喜欢现在的生活,我不想回归过去" << endl;
cout << "请输入您的选择" << "\t";
cin >> select;
switch (select)
{
case 'A':
cout << "你只要足够努力,魔法的皇冕终将属于你……" << endl;
Score(0);
break;
case 'B':
cout << "给你一把宝剑的话,我想再也没有什么能够打消你的勇气……" << endl;
Score(50);
break;
case 'C':
cout << "愿忠诚与希望永远伴随着你……" << endl;
Score(100);
break;
case 'D':
cout << "我是说如果……好吧……看来你的现实主义色彩很强烈嘛!" << endl;
Score(200);
break;
}
Sleep(2000);
system("cls");
break;
default:
break;
}
}
judge = 1;
Score(0);
}
//格兰芬多学院
void Gryffindor()
{
cout << "分院帽:(大声地)格兰芬多!!!" << endl;
Sleep(5000);
system("cls");
cout << "恭喜你!你的血液里铭刻的是戈德里克·格兰芬多的名字,他的不朽伟业将后继有人!" << endl;
cout << "创始人:\t戈德里克·格兰芬多\n" << "特质:\t勇气\n" << "象征元素:\t火\n"
<< "学院的代表色:\t红色,金色\n" << "知名校友:\t哈利•波特\\邓布利多\n" << "代表动物:\t狮子\n";
}
//拉文克劳学院
void Ravenclaw()
{
cout << "分院帽:(大声地)拉文克劳!!!" << endl;
Sleep(5000);
system("cls");
cout << "我们真是庆幸!罗伊纳·拉文克劳也会同样的骄傲我们的学院来临了一位天才魔法师!!!" << endl;
cout << "创始人:\t罗伊纳·拉文克劳\n" << "特质:\t聪颖\n" << "象征元素:\t风\n"
<< "学院的代表色:\t蓝色,青铜色\n" << "知名校友:\t秋·张//卢娜·洛夫古德\n" << "代表动物:\t鹰\n";
}
//赫奇帕奇学院
void Hufflepuff()
{
cout << "分院帽:(大声地)赫奇帕奇!!!" << endl;
Sleep(5000);
system("cls");
cout << "感谢赫尔加·赫奇帕奇创建学院,我们才能与你相识!!!" << endl;
cout << "创始人:\t赫尔加·赫奇帕奇\n" << "特质:\t忠诚\n" << "象征元素:\t土\n"
<< "学院的代表色:\t黄色和黑色\n" << "知名校友:\t厄尼·麦克米兰//纽特·斯卡曼德\n" << "代表动物:\t地鼠\n";
}
//斯莱特林学院
void Slytherin()
{
cout << "分院帽:(大声地)斯莱特林!!!" << endl;
Sleep(5000);
system("cls");
cout << "斯莱特林会帮你达到巅峰" << endl;
cout << "创始人:\t萨拉查·斯莱特林\n" << "特质:\t野心\n" << "象征元素:\t水\n"
<< "学院的代表色:\t绿色、银色\n" << "知名校友:\t(模糊不清,好像是在隐藏什么)\n" <<"代表动物:\t蛇\n";
}
int main(void)
{
//我们需要一个随机数的种子
srand((unsigned int)time(NULL));
//我们先定义好Sortinghat(分院帽)
cout << "分院帽:欢迎来到这里,让我来看看你现在手里拿的是什么样的魔杖" << endl;
Sleep(3000);
cout << "A、槭木 凤凰羽毛 七英寸长\t" <<" B、山毛榉木 蛇的神经 九英寸长\n"
<< "C、榆木 龙的神经 八英寸长\t" << "D、山楂木 独角兽毛 十英寸长" << endl;
Sleep(3000);
cout << "(现在分院帽会有你手中的魔杖来决定你是一个什么类型的人)";
char select;
cout << "请输入您的选择" << "\t";
cin >> select;
switch (select)
{
case 'A':
Score(10);
cout << "嗯,不错的选择……我现在已经有了十足的把握,但为了对你了解的更加深入,\n你还是要继续回答我下面的问题,你可要如实的回答哟……" << endl;
Sleep(5000);
system("cls");
Problem_gram();
break;
case 'B':
Score(100);
cout << "嗯……这根魔杖很适合你嘛……利用好的话他会帮你走上巅峰\n请你还是要继续回答我下面的问题……" << endl;
Sleep(5000);
system("cls");
Problem_gram();
break;
case 'C':
Score(500);
cout << "你可知道他之前的主人……额……我会让你如愿以偿" << endl;
Sleep(5000);
system("cls");
Problem_gram();
break;
case 'D':
Score(100);
cout << "没有什么能比独角兽的毛做枕芯再合适不过的了……你很神秘……就让我用5道题来解开你的真面目吧……" << endl;
Sleep(5000);
system("cls");
Problem_gram();
break;
}
system("pause");
return 0;
}