栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

带你学会C++文字页面类项目——3.答题器制作

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

带你学会C++文字页面类项目——3.答题器制作

目录

前言

大体框架

所有string制作

1.question

2.ans

3.encourage

3s跳转制作

宝箱页制作

综合制作

麟总结


前言

        往期链接:2.引子与首页部分制作

        上一期,我们学习了引子与首页部分的制作。本次我带大家来认识答题器基本制作。

大体框架

        在制作答题器时,我们大体思路为:

string question={"...",...};//题目字符串
string ans="ABCD...";//答案字符串
string encourage={"...",...};//系统鼓励字符串,可有可无

void questions(){
    1.页面颜色,标题等;
    for(int i=1;i<题目数;i++){
        输入;
        判断,score++;
        其他;
    }
    2.宝箱页跳转与否
}

        也就是先进行题目与答案的整合,包括系统提示(待会会讲)。这样代码可读性更高。

所有string制作

1.question

        这里指题目部分。我们可以加上需要(1.  2.等),但最好不用加,在for循环内再加。这样题目次序就没有限制。我们一般会多用nn空行分隔,做的要清晰一点。比如:

        这里,我给出范例:

string question2[6]={"由于重金属矿物的不科学开采和利用,没有造成了什么现象?nnA.金属元素侵入土壤nnB.土质结构改变nnC.增加泥土含金量,造福当地村民nnD.影响农作物生长","如果泥砂涌入大海,有可能发生什么?nnA.危及海洋生物链nnB.引发洪灾nnC.海水淹没陆地nnD.填海造地后多植树就会对环境好","生态文明是指什么?nnA.人类遵循社会主义,共产主义与环境保护三者精神成果的总和nnB.人类遵循人、自然、社会和谐发展这一客观规律而取得的物质与精神成果的总和nnC.人们拥有保护环境的习惯nnD.建设崇明东滩湿地","从哪三大效益的需要来看,山区的自然地貌决定了最适宜发展的就是林业?nnA.经商,旅游业,经济nnB.环境,风气,态度nnC.民主,富强,智慧nnD.经济、社会、生态","植树造林应遵循什么?nnA.雨水多,土地肥沃nnB.天时、地利、人和nnC.心情好就行nnD.与树交流感情"};

2.ans

        ans指回答结果。对于一题给一个大写字母(小写也不是不行,就是后面需要改变处理方式)

        他只用一个string就可以完成。例如:

string ans="CDAAB";

3.encourage

        系统提示。指作对几道题,就给不同的鼓励。直接给到:

string encourage[30]={"一往无前,路漫漫其修远兮!恭喜您答对1题!","众望攸归,曾无与二!且喜青云足下生!恭喜您答对2题!","韦编三绝,观隅反三,书中自有颜如玉!恭喜您答对3题!","精诚所至,金石为开。名扬四海,指日可待!恭喜您答对4题!","学富五车,梅花香自苦寒来!恭喜您答对5题!","四清六活,天生我材必有用!恭喜您答对6题!","七步成诗,我辈岂是蓬蒿人!恭喜您答对7题!","八斗之才,指示青云借羽翰!恭喜您答对8题!","声闻九皋,卓尔超群,九万抟扶排羽翼!恭喜您答对9题!","十年寒窗逢佳日,且喜青云足下生!恭喜您答对10题!","金榜高悬姓字真,分明折得一枝春!恭喜您答对11题!","海阔凭鱼跃,天高任鸟飞!恭喜您答对12题!","千淘万漉虽辛苦,吹尽狂沙始到金!恭喜您答对13题!","三万里河东入海,五千仞岳上摩天!恭喜您答对14题!","不畏浮云遮望眼,自缘身在最高层!恭喜您答对15题!","循序而渐进,熟读且精思。恭喜您答对16题!","春风得意马蹄疾,一日看尽长安花!恭喜您答对17题","操千曲而后晓声,观千剑而后识器!恭喜您答对18题!","少年莫坠青云志,敢许天下第一流!恭喜您答对19题!","一万年来谁著史,八千里外觅诸侯!恭喜您,答对,20题!!!"}; 

        是不是很有文学气息?其是这是现在希望学的系统提示,作者借鉴模仿。

3s跳转制作

        一些3s跳转,往往是大家在一些小游戏内可以普遍看到的。对于C++的3s跳转,我们宜可轻松完成。

        这里用到了退格键b的用法,有不清楚的可以看我的往期文章:

        往期文章:详解那些C++中特殊的转义字符(b, r, f 等)

        先看一看普通跳转:

cout<<"nnt3s后跳转...";
Sleep(1000);
cout<<"bbbbbbbbbbb2s后跳转...";
Sleep(1000);
cout<<"bbbbbbbbbbb1s后跳转...";
Sleep(1000);

        我们还可以改成跳转首页,跳转至下一题。但记住,中文字符占两个位,需要两个b符!!! 

        其他没什么好说的,我们继续。

宝箱页制作

        我们先学习如何做宝箱。宝箱主要用颜文字:

   /###((o/))####/ |
  /_____//^\____/# |
 |       #       |# |
 |  超   #   宝  |# |
 |  级   #   箱  |#/
 |_______#____ __|/
                     恭喜你全做对了,点击x键领取宝箱!)

        我们需要先输出宝箱图案,在进行getch()=='x'与否进行判断。用户点击x键,进行宝箱领取,金币添加。

        为了保证金币数与返回到原页面,我们还需要给定参数n代表金币数且字符w代表原页面。这里原页面的函数根据自己的要求所定。

        所以代码为:

void chest(int n,char w){
	rgb_set(255,97,0,189,252,201);
	system("cls");
	system("title 开宝箱");
	cout<<"tttt";
	alert("宝箱nn");
	rgb_set(255,153,18,189,252,201);
	cout<<"ttt     ◎金币:"< 

综合制作

        接着,我们来完成答题部分制作。

        直接上代码:

void questions(){
	rgb_set(0,0,0,189,252,201);
	system("cls");
	system("title 趣味答题");
	cout<<"tttt";
	Slert("趣味答题nn");
	rgb_set(255,153,18,189,252,201);
	cout<<"ttt     ◎金币:"<>answ;
		
		if(answ==ans[i-1]||answ==ans[i-1]+32){
			corn++;
			rgb_set(0,0,0,189,252,201);
			system("cls");
			cout<<"tttt";
			cout<<"趣味答题nn";
			rgb_set(255,153,18,189,252,201);
			cout<<"ttt     ◎金币:"< 
 

        做出来效果十分的不错。大家如果不想做大的项目,只想做一个答题器,可以对此代码进行删改。

麟总结

        本期我带大家学了:

        答题器中的string,3s跳转,宝箱页,答题器制作。

  

        下次我们进行综合完善环节,非常精彩,敬请期待。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1030011.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号