带你学会C++文字页面类项目——4.整体完善与项目1

目录

🔮前言

🎾最简单的finish页面

🏀普通文字页面 

🏓项目要求 

🥏完全代码

🧳总结


🔮前言

        往期链接:3.答题器制作

        上一期我带大家学习了怎么做答题器,这一次,我们来完善我们整个项目。

🎾最简单的finish页面

        结束页与引子页同样的好做。我们用alert函数,对文字输出即可。

        直接给你范例:

void finish(){
	rgb_set(245,245,245,0,199,140);
	system("cls");
	system("title 感谢您的使用");
	alert("\t不知不觉,");
	Sleep(300);
	alert("我们的旅程到达了终点。");
	Sleep(300);
	alert("不知道大家是否都有所学到呢?");
	Sleep(300);
	alert("\n\n\t在此感谢您的使用,期待下次再见。\n");
	Sleep(300);
	Slert("\
       ____ \n\
   .-\'&    \'-.\n\
  / 制作:金博欣\\\n\
 :   o    o    ;\n\
(      (_       )      科技创造,超越梦想!\n\
 :             ;\n\
  \\   \\__/    /\n\
   `-._____.-\'\n\
     /`\"\"\"`\\\n\
    /    ,  \\\n\
   /|/\\/\\/\\ _\\\n\
  (_|/\\/\\/\\\\__)\n\
    |_______|\n\
   __)_ |_ (__\n\
  (_____|_____)\n\
	");
	system("pause");	
}

        是不是十分的不错?我们对于其中文字与图案都可以根据自己需求做调整。

🏀普通文字页面 

        普通文字页面即知识或内容展示页。我们先用string保存内容(记住用空行来表示行距)。

        例如:

string make_ep_changes[10]={"\t有专家指出,现在地区性生态资源耗竭和环境问题正在演变成为全球性的\n\n问题,在一系列环境恶化的现象中,尤其是土壤破坏最为严重,由于重金属矿物的\n\n不科学开采和利用,造成大量金属元素浸入土壤,改变土质结构,影响着农作物健\n\n康生长。坡地开荒、植被破坏造成水土流失,同时抬高河床、阻塞河道。化肥过量\n\n施用,造成土壤板结,有机质降低,影响农作物品质。地膜、塑料污染土壤或焚烧\n\n影响空气质量。土壤的盐碱化、沙化、草山草原退化严重。给现代化建设带来难于\n\n想象的后果:\n\n\n\t一、气候反常,高温和严寒反复侵袭地面,严重威胁着农业生产,从而直\n\n接影响农民增收和危及粮食供给安全。\n\n\t二、大量泥砂涌入大海,致使海平面不断上升,甚至对沿海耕地造成淹没的\n\n威胁。\n\n\t三、水灾、旱灾越来越严重而且越来越频繁,造成大面积农田绝收、人畜\n\n饮水困难,灾民流离失所。使日益严重的贫困问题更为严重,甚至影响社会的稳定\n\n与和谐,移民安置费用剧增。\n\n\t四、空气质量、土壤质量、水体质量变差是影响健康食品的直接因素。在\n\n现代农业发展中,食品安全和健康食品生产直接影响着农业产生者的收益水平,尤\n\n其是水体污染较为突出。","\t生态文明是指人类遵循人、自然、社会和谐发展这一客观规律而取得的物\n\n质与精神成果的总和,是指人与自然、人与人、人与社会之间和谐共生、良性循环\n\n、全面发展、持续繁荣为基本宗旨的文化伦理形态。\n\n\t 1、人是破坏生态的罪魁祸首。人口增长对森林资源和水资源的需求量增\n\n大,人是生态资源的最大收益者,随着人口的增长,在工业化、城镇化进程中,人\n\n类与生态的相互依存的同时,却毁坏生态污染了环境,人口增长和人类的发展成为\n\n破坏生态环境的根源。\n\n\t2、生态文明建设。生态文明是人类文明的一种形态,它以尊重和维护自然\n\n为前提,以人与人、人与自然、人与社会和谐共生为宗旨,以建立可持续的生产方\n\n式和消费方式为内涵,以引导人们走上持续、和谐的发展道路为着眼点。生态文明\n\n强调人的自觉与自律,强调人与自然环境的相互依存、相互促进、共处共融,既追\n\n求人与生态的和谐,也追求人与人的和谐,而且人与人的和谐是人与自然和谐的前\n\n提。","\t气候环境的恶化和水源的消失给人们深刻的反思,于是在过去的实践中,\n\n高度重视植树造林,但对森林的保护力度不够,结果年年种树不见树。人们都知道\n\n“砍树容易栽树难”,“十年树木”周期较长,森林一经破坏一朝一夕难以成林,\n\n生态一经毁坏多年难于修复。在对生态的建设与破坏之间,应充分发挥其修复功能\n\n,保护好了生态环境,各种树木竞相生长。国家、集体和有善念的人不重视保护,\n\n必然会遭受恶念之人的趁机破坏。随着生产力的发展,破坏的力量也在增长,不加\n\n以珍爱的话,树木永远长不过人。因此,保护森林重于植树造林。"};

🏓项目要求 

        这是我们之前所有文章给到样例的具体活动要求:

        创未来·我是强国畅想家(六年级):

        科技是国之利器,以“科技梦”助推“中国梦”,新时代的青少年责无旁贷。运用身边现有的科技类素材、电脑编程软件等,设计一款科技作品,以体现科学与环保、环境保护、改造人类生存条件、开发新能源和新型生产生活用品等方面的内容为主题。将“创作过程+作品成品元素”,制作一段视频。

🥏完全代码

        完全的代码真的来之不易,是做了20天完成的,希望多多点赞:

#include<iostream>
#include<conio.h> 
#include<windows.h>
#include<cstdio>
#include<string>
using namespace std;

//页面声明
void get_in();
void homepage();

void page1_environment_protect();
void page1_centre1_ctell();
void page1_centre2_htell();
void page1_centre3_effect();

void page2_make_changes();
void page2_centre1_pl();
void page2_centre2_eprp();
void page2_centre3_pt(); 

void page3_new_materials();
void page3_centre1_figure_out();
void page3_centre2_gn();
void page3_centre3_sp();

void page4_questions(string);
void finish();
void chest(int,char);

//小插件声明 
void alert(string);
void Slert(string);
void rgb_init();
void rgb_set(int wr,int wg,int wb,int br,int bg,int bb);

//字段声明
 
string question1[6]={"DDT是什么?\n\nA.火箭燃料\n\nB.电脑热传感器\n\nC.有机氯类农药杀虫剂\n\nD.网络用语","环境问题是由什么引起的?\n\nA.核弹制造\n\nB.边境冲突\n\nC.恐怖分子\n\nD.工业发展","被称为20世纪环境生态学的标志性起点的一本书叫什么?\n\nA.《寂静的春天》\n\nB.《三体》\n\nC.《新程序员》\n\nD.《中华人民共和国环境保护法》","环保包括的三个层面的问题不包括什么?\n\nA.自然灾害对经济意义上的影响的消减\n\nB.对人类居住、生活环境的保护\n\nC.对自然环境的保护\n\nD.对地球生物的保护","哪部文案是环境保护事业正式引起世界各国政府重视的开端?\n\nA.《中华人民共和国环境保护法》\n\nB.《人类环境宣言》\n\nC.《寂静的春天》\n\nD.《绿色建筑评价标准》"};
string question2[6]={"由于重金属矿物的不科学开采和利用,没有造成了什么现象?\n\nA.金属元素侵入土壤\n\nB.土质结构改变\n\nC.增加泥土含金量,造福当地村民\n\nD.影响农作物生长","如果泥砂涌入大海,有可能发生什么?\n\nA.危及海洋生物链\n\nB.引发洪灾\n\nC.海水淹没陆地\n\nD.填海造地后多植树就会对环境好","生态文明是指什么?\n\nA.人类遵循社会主义,共产主义与环境保护三者精神成果的总和\n\nB.人类遵循人、自然、社会和谐发展这一客观规律而取得的物质与精神成果的总和\n\nC.人们拥有保护环境的习惯\n\nD.建设崇明东滩湿地","从哪三大效益的需要来看,山区的自然地貌决定了最适宜发展的就是林业?\n\nA.经商,旅游业,经济\n\nB.环境,风气,态度\n\nC.民主,富强,智慧\n\nD.经济、社会、生态","植树造林应遵循什么?\n\nA.雨水多,土地肥沃\n\nB.天时、地利、人和\n\nC.心情好就行\n\nD.与树交流感情"};
string question3[6]={"下列能源不是新能源的是哪一个?\n\nA.势能\n\nB.生物质能\n\nC.核能\n\nD.地热能","普遍新能源开发利用需要较大空间,是因为什么?\n\nA.能量密度低\n\nB.自然环境\n\nC.能量巨大,设备简陋会导致爆炸\n\nD.影响当地电路","我国,新能源行业对什么行业产生影响与改变?\n\nA.林业\n\nB.股市\n\nC.核弹制造业\n\nD.气候业","核能的释放不包括哪一种?\n\nA.核弹试验\n\nB.核裂变能\n\nC.核聚变能\n\nD.核衰变","新能源开发对环境影响小,是因为什么?\n\nA.不用砍树\n\nB.是高科技\n\nC.受到政府批准\n\nD.不含碳或含碳量很少"};
string question4[26]={"DDT是什么?\n\nA.火箭燃料\n\nB.电脑热传感器\n\nC.有机氯类农药杀虫剂\n\nD.网络用语","环境问题是由什么引起的?\n\nA.核弹制造\n\nB.边境冲突\n\nC.恐怖分子\n\nD.工业发展","被称为20世纪环境生态学的标志性起点的一本书叫什么?\n\nA.《寂静的春天》\n\nB.《三体》\n\nC.《新程序员》\n\nD.《中华人民共和国环境保护法》","环保包括的三个层面的问题不包括什么?\n\nA.自然灾害对经济意义上的影响的消减\n\nB.对人类居住、生活环境的保护\n\nC.对自然环境的保护\n\nD.对地球生物的保护","哪部文案是环境保护事业正式引起世界各国政府重视的开端?\n\nA.《中华人民共和国环境保护法》\n\nB.《人类环境宣言》\n\nC.《寂静的春天》\n\nD.《绿色建筑评价标准》","由于重金属矿物的不科学开采和利用,没有造成了什么现象?\n\nA.金属元素侵入土壤\n\nB.土质结构改变\n\nC.增加泥土含金量,造福当地村民\n\nD.影响农作物生长","如果泥砂涌入大海,有可能发生什么?\n\nA.危及海洋生物链\n\nB.引发洪灾\n\nC.海水淹没陆地\n\nD.填海造地后多植树就会对环境好","生态文明是指什么?\n\nA.人类遵循社会主义,共产主义与环境保护三者精神成果的总和\n\nB.人类遵循人、自然、社会和谐发展这一客观规律而取得的物质与精神成果的总和\n\nC.人们拥有保护环境的习惯\n\nD.建设崇明东滩湿地","从哪三大效益的需要来看,山区的自然地貌决定了最适宜发展的就是林业?\n\nA.经商,旅游业,经济\n\nB.环境,风气,态度\n\nC.民主,富强,智慧\n\nD.经济、社会、生态","植树造林应遵循什么?\n\nA.雨水多,土地肥沃\n\nB.天时、地利、人和\n\nC.心情好就行\n\nD.与树交流感情","下列能源不是新能源的是哪一个?\n\nA.势能\n\nB.生物质能\n\nC.核能\n\nD.地热能","普遍新能源开发利用需要较大空间,是因为什么?\n\nA.能量密度低\n\nB.自然环境\n\nC.能量巨大,设备简陋会导致爆炸\n\nD.影响当地电路","我国,新能源行业对什么行业产生影响与改变?\n\nA.林业\n\nB.股市\n\nC.核弹制造业\n\nD.气候业","核能的释放不包括哪一种?\n\nA.核弹试验\n\nB.核裂变能\n\nC.核聚变能\n\nD.核衰变","新能源开发对环境影响小,是因为什么?\n\nA.不用砍树\n\nB.是高科技\n\nC.受到政府批准\n\nD.不含碳或含碳量很少","判断题:E=mc^2;,其中E=能量,m=质量,c=光速常量。\n\nA.对\n\nB.错","判断题:铀-235、钚-239等是重原子核。\n\nA.对\n\nB.错","判断题:核衰变是一种自然的快得多的裂变形式,因其能量释放过于剧烈而难以加以利用\n\nA.对\n\nB.错","判断题:核能的资源利用率低。\n\nA.对\n\nB.错","判断题:核裂变能是通过一些中子的裂变释放出的能量。\n\nA.对\n\nB.错"};
string q1a="CDAAB",q2a="CCBDB",q3a="AABAD",q4a="CDAABCCBDBAABADAABAB";

string get_new_materials[10]={"\t新能源主要包括太阳能、生物质能、水能、风能、地热能、波浪能、洋流\n\n能和潮汐能,以及海洋表面与深层之间的热循环等。除此之外,还有氢能、沼气、\n\n酒精、甲醇等。","\t据分析,2001年以来我国能源消费结构并没有发生显著的改变。石化能源\n\n,特别是煤炭消费在一次能源消费中一直居于主导地位,所占的比重分别达到九成\n\n和六成以上。\n\n\t对于新能源行业而言,认为这为其提供了福音。综合观察中国的股市行业\n\n,也正说明了这一点,中国绿色能源类股票价格飞扬,更多的闲散资金纷纷投入新\n\n能源以及环保行业。同时,中国将超过欧洲,成为世界最大的可替代能源增长市场\n\n。在此背景下,新能源行业应该抓住这次契机,积极发展风电、太阳能等,提高新\n\n能源的比重。","\t1)资源丰富,普遍具备可再生特性,可供人类永续利用;比如,陆上估计\n\n可开发利用的风力资源为253GW, 而截止2003年只有0.57GW被开发利用,预计到201\n\n0年可以利用的达到4GW, 到2020年到20GW,而太阳能光伏并网和离网应用量预计到\n\n2020年可以从的0.03GW增加1至2个GW。\n\n\t2)能量密度低,开发利用需要较大空间;\n\n\t3)不含碳或含碳量很少,对环境影响小;\n\n\t4)分布广,有利于小规模分散利用;\n\n\t5)间断式供应,波动性大,对持续供能不利;\n\n\t6)除水电外,可再生能源的开发利用成本较化石能源高。"};

string make_ep_changes[10]={"\t有专家指出,现在地区性生态资源耗竭和环境问题正在演变成为全球性的\n\n问题,在一系列环境恶化的现象中,尤其是土壤破坏最为严重,由于重金属矿物的\n\n不科学开采和利用,造成大量金属元素浸入土壤,改变土质结构,影响着农作物健\n\n康生长。坡地开荒、植被破坏造成水土流失,同时抬高河床、阻塞河道。化肥过量\n\n施用,造成土壤板结,有机质降低,影响农作物品质。地膜、塑料污染土壤或焚烧\n\n影响空气质量。土壤的盐碱化、沙化、草山草原退化严重。给现代化建设带来难于\n\n想象的后果:\n\n\n\t一、气候反常,高温和严寒反复侵袭地面,严重威胁着农业生产,从而直\n\n接影响农民增收和危及粮食供给安全。\n\n\t二、大量泥砂涌入大海,致使海平面不断上升,甚至对沿海耕地造成淹没的\n\n威胁。\n\n\t三、水灾、旱灾越来越严重而且越来越频繁,造成大面积农田绝收、人畜\n\n饮水困难,灾民流离失所。使日益严重的贫困问题更为严重,甚至影响社会的稳定\n\n与和谐,移民安置费用剧增。\n\n\t四、空气质量、土壤质量、水体质量变差是影响健康食品的直接因素。在\n\n现代农业发展中,食品安全和健康食品生产直接影响着农业产生者的收益水平,尤\n\n其是水体污染较为突出。","\t生态文明是指人类遵循人、自然、社会和谐发展这一客观规律而取得的物\n\n质与精神成果的总和,是指人与自然、人与人、人与社会之间和谐共生、良性循环\n\n、全面发展、持续繁荣为基本宗旨的文化伦理形态。\n\n\t 1、人是破坏生态的罪魁祸首。人口增长对森林资源和水资源的需求量增\n\n大,人是生态资源的最大收益者,随着人口的增长,在工业化、城镇化进程中,人\n\n类与生态的相互依存的同时,却毁坏生态污染了环境,人口增长和人类的发展成为\n\n破坏生态环境的根源。\n\n\t2、生态文明建设。生态文明是人类文明的一种形态,它以尊重和维护自然\n\n为前提,以人与人、人与自然、人与社会和谐共生为宗旨,以建立可持续的生产方\n\n式和消费方式为内涵,以引导人们走上持续、和谐的发展道路为着眼点。生态文明\n\n强调人的自觉与自律,强调人与自然环境的相互依存、相互促进、共处共融,既追\n\n求人与生态的和谐,也追求人与人的和谐,而且人与人的和谐是人与自然和谐的前\n\n提。","\t气候环境的恶化和水源的消失给人们深刻的反思,于是在过去的实践中,\n\n高度重视植树造林,但对森林的保护力度不够,结果年年种树不见树。人们都知道\n\n“砍树容易栽树难”,“十年树木”周期较长,森林一经破坏一朝一夕难以成林,\n\n生态一经毁坏多年难于修复。在对生态的建设与破坏之间,应充分发挥其修复功能\n\n,保护好了生态环境,各种树木竞相生长。国家、集体和有善念的人不重视保护,\n\n必然会遭受恶念之人的趁机破坏。随着生产力的发展,破坏的力量也在增长,不加\n\n以珍爱的话,树木永远长不过人。因此,保护森林重于植树造林。"};

string environment_protect_objects[10]={"\t环保,全称环境保护,是指人类为解决现实的或潜在的环境问题,协调人\n\n类与环境的关系,保障经济、社会的持续发展而采取的各种行动的总称。其方法和\n\n手段有工程技术的、行政管理的、创新研发的,也有法律的、经济的、宣传教育的\n\n等。","\t1962年美国海洋生物学家蕾切尔·卡逊在《寂静的春天》一书中明确描述\n\n了农药杀虫剂DDT对环境的污染和破坏环境作用,由于该书的警示,美国政府开始\n\n对剧毒杀虫剂问题进行调查,并于1970年成立了环境保护局,各州也相继通过禁止\n\n生产和使用剧毒杀虫剂的法律。由于此事,该书被认为是20世纪环境生态学的标志\n\n性起点。\n\t1972年6月5日至16日由联合国发起,在斯德哥尔摩召开“第一届联合国人\n\n类环境会议”,提出了著名的《人类环境宣言》,是环境保护事业正式引起世界各\n\n国政府重视的开端。中国政府也参加了这个会议。\n\n\t中华人民共和国的环境保护事业也是从1972年开始起步,北京市成立了官\n\n厅水库保护办公室,河北省成立了三废处理办公室共同研究处理位于官厅水库畔属\n\n于河北省的沙城农药厂污染官厅水库问题,导致中国颁布法律正式规定在全国范围\n\n内禁止生产和使用“DDT”。\n\n\t1973年成立国家建委下设的环境保护办公室,后来改为由国务院直属的部\n\n级国家环境保护总局。在2008年“两会”,环保总局升格为“环保总部”,并对全\n\n国的环境保护实施统一的监督管理。","1.土壤遭到破坏\n\n\t据参考消息报道,110个国家(约10亿人)可耕地的肥沃程度在降低。在\n\n非洲、亚洲和拉丁美洲由于森林植被的消失、耕地的过分开发和牧场的过度放牧,\n\n土壤剥蚀情况十分严重。裸露的土地变得脆弱了,无法长期抵御风雨的剥蚀。在有\n\n些地方,土壤的年流失量可达每公顷100吨。化肥和农药过多使用,与空气污染有\n\n关的有毒尘埃降落,泥浆到处喷洒,危险废料到处抛弃,所有这些都在对土地构成\n\n一般来说是不可逆转的污染。\n\n\t土壤是指陆地表面具有肥力、能够生长植物的疏松表层,其厚度一般在2m\n\n左右。土壤不但为植物生长提供机械支撑能力,并能为植物生长发育提供所需要的\n\n水、肥、气、热等肥力要素。由于人口急剧增长,工业迅猛发展,固体废物不断向\n\n土壤表面堆放和倾倒,有害废水不断向土壤中渗透,大气中的有害气体及飘尘也不\n\n断随雨水降落在土壤中,导致了土壤污染。凡是妨碍土壤正常功能,降低作物产量\n\n和质量,还通过粮食、蔬菜、水果等间接影响人体健康的物质,都叫作土壤污染物。\n\n2.气候变化和能源浪费温室效应\n\n\t据2500名有代表性的专家预计,海平面将升高,许多人口稠密的地区(如\n\n孟加拉国、中国沿海地带以及太平洋和印度洋上的多数岛屿)都将被水淹没。气温\n\n的升高也将对农业和生态系统带来严重影响。据预计,1990-2010年,亚洲和太平\n\n洋地区的能源消费将增加一倍,拉丁美洲的能源消费将增加50%-70%。因此,西方\n\n和发展中国家之间应加强能源节约技术的转让进程。我们特别应当采用经济鼓励手\n\n段,使工业家们开发改进工业资源利用效率的工艺技术。\n\n3.生物的多样性减少\n\n\t由于城市化、农业发展、森林减少和环境污染,自然区域变得越来越小了\n\n,这就导致了数以千计物种的灭绝。因为一些物种的绝迹会导致许多可被用于制造\n\n新药品的分子归于消失,还会导致许多能有助于农作物战胜恶劣气候的基因归于消\n\n失,甚至会引起瘟疫。\n\n4.森林面积的减少\n\n\t热带地区国家森林面积减少的情况也十分严重。在1980-1990年,世界上\n\n有1.5亿公顷森林消失了。按照这种森林面积减少的速度,40年以后,一些东南亚\n\n国家就再也见不到一棵树了。\n\n5.淡水资源受到威胁\n\n\t据专家估计,从下个世纪初开始,世界上将有四分之一的地方长期缺水。\n\n请记住,我们不能造水,我们只能设法保护水。\n\n6.化学污染\n\n\t工业带来的数百万种化合物存在于空气、土壤、水、植物、动物和人体中\n\n。即使作为地球上最后的大型天然生态系统的冰盖也受到污染。那些有机化合物、\n\n那些重金属、那些有毒产品,都集中存在于整个食物链中,并最终将威胁到动植物\n\n的健康,引起癌症,导致土壤肥力减弱。\n\n7.混乱的城市化\n\n\t到本世纪末,世界上的大城市将达21个,大城市里的生活条件将进一步恶\n\n化:拥挤、水被污染、卫生条件差、无安全感——这些大城市的无序扩大也损害到\n\n了自然区。因此,无限制的城市化应当被看作是文明的新弊端。\n\n8.海洋的过度开发和沿海地带被污染\n\n\t由于过度捕捞,海洋的渔业资源正在以令人可怕的速度减少。因此,许多\n\n靠摄取海产品蛋白质为生的穷人面临着饥饿的威胁。集中存在于鱼肉中的重金属和\n\n有机磷化合物等物质有可能给食鱼者的健康带来严重的问题。沿海地区受到了巨大\n\n的人口压力。全世界有60%的人口挤在离大海不到100公里的地方,这种人口拥挤状\n\n态使常常很脆弱的这些地方失去了平衡。\n\n9.空气污染\n\n\t多数大城市里的空气含有许多取暖、运输和工厂生产带来的污染物。这些\n\n污染物威胁着数千万市民的健康,导致许多人失去了生命。有毒气体主要为一氧化\n\n碳、二氧化硫、二氧化氮和可吸入颗粒。\n\n10.极地臭氧层空洞\n\n\t尽管人们已签署了蒙特利尔协定书,但每年春天,在地球的两个极地的上\n\n空仍再次形成臭氧层空洞,北极的臭氧层损失20%到30%,南极的臭氧层损失51%以\n\n上。"};

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

//金币
int corn; 

int main(){
	rgb_init();
	rgb_set(255,255,255,0,201,87);
	system("mode con cols=72 lines=28");
	get_in();
	return 0;
}

void alert(string a){
	for(int i=0;i<a.size();i++){
		cout<<a[i];
		Sleep(15);
	}
}
void Slert(string a){
	for(int i=0;i<a.size();i++){
		cout<<a[i];
		Sleep(1);
	}
}

void get_in(){
	system("cls");
	system("title 引子");
	cout<<"\t\t\t  ";
	rgb_set(200,255,255,0,201,87);
	alert("创未来·我的科技梦\n\n");
	rgb_set(255,255,255,0,201,87);
	alert("\t“科技是第一生产力”。自二十世纪开始,祖国的科学技术有了突破性的\n\n发展。\n\n");
	Sleep(500);
	alert("\t时至今日,科技仍是推动时代发展的利器。“科技梦”推动“中国梦”,\n\n祖国的科技日益渐进,成就了伟大壮举。\n\n\t我们作为新时代的接班人,也要掌握科技力量,为祖国的未来争光添彩。\n\n\t现在,许多科技内容高深莫测,我们没法掌握。但是关于环境保护,我们\n\n可以做到。\n\n\t让我们开始我们的生态科技学习之旅吧!");
	rgb_set(255,10,10,0,201,87);
	cout<<"\n\n\t3s后跳转到首页...";
	Sleep(1000);
	cout<<"\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b2s后跳转到首页...";
	Sleep(1000);
	cout<<"\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b1s后跳转到首页...";
	Sleep(1000);
	homepage();
}

void homepage(){
	rgb_set(200,255,255,144,144,255);
	system("cls");
	system("title 首页");
	cout<<"\t\t\t\t";
	Slert("首页\n\n");
	rgb_set(255,255,0,144,144,255);
	cout<<"\t\t\t     ◎金币:"<<corn<<"\n";
	rgb_set(255,255,255,144,144,255);
	Slert(" 1. 环境保护\n\n");
	Slert(" 2. 改善生态环境\n\n");
	Slert(" 3. 开发新能源\n\n");
	Slert(" 4. 趣味答题\n\n");
	rgb_set(11,23,180,144,144,255);
	Slert("(*输入相应数字,前往平台,如想退出请按R)");
flag:	switch(getch()) {
    	case '1':
        	page1_environment_protect();
        	break;
    	case '2':
        	page2_make_changes();
        	break;
    	case '3':
    		page3_new_materials();
			break;
    	case '4':
    		page4_questions("");
			break;
		case 'r':
			finish();
			break;
		case 'R':
			finish();
			break;
		default:
			goto flag;
			break;
    }
}

void page1_environment_protect(){
	rgb_set(255,255,255,0,199,140);
	system("cls");
	system("title 1.环境保护");
	cout<<"\t\t\t\t";
	Slert("1.环境保护\n\n");
	Slert(" 1. 环保概述\n\n");
	Slert(" 2. 发展历程\n\n");
	Slert(" 3. 影响讲解\n\n");
	Slert(" 4. 趣味答题\n\n");
	rgb_set(11,23,180,0,199,140);
	alert("(*输入相应数字,前往分支,返回首页请按R)");
flag:	switch(getch()) {
    	case '1':
        	page1_centre1_ctell();
        	break;
    	case '2':
        	page1_centre2_htell();
        	break;
    	case '3':
    		page1_centre3_effect();
			break;
    	case '4':
    		page4_questions("ep");
			break;
		case 'r':
			homepage();
			break;
		case 'R':
			homepage();
			break;
		default:
			goto flag;
			break;
    }
}

void page1_centre1_ctell(){
	rgb_set(0,0,0,189,252,201);
	system("cls");
	system("title 1.环境保护/1.环保概述");
	cout<<"\t\t\t\t";
	Slert("1.环保概述\n\n");
	rgb_set(48,128,20,189,252,201);
	alert(environment_protect_objects[0]);
	Sleep(2000);
	Slert("\n\n\n\n\t内容到底啦!点击R返回。");
	while(1){
		switch(getch()){
			case 'r':
				page1_environment_protect();
				break;
			case 'R':
				page1_environment_protect();
				break;
		}	
	} 
}

void page1_centre2_htell(){
	rgb_set(0,0,0,189,252,201);
	system("cls");
	system("title 1.环境保护/2.发展历程");
	cout<<"\t\t\t\t";
	Slert("2.发展历程\n\n");
	rgb_set(48,128,20,189,252,201);
	alert(environment_protect_objects[1]);
	Sleep(2000);
	Slert("\n\n\n\n\t内容到底啦!点击R返回。");
	while(1){
		switch(getch()){
			case 'r':
				page1_environment_protect();
				break;
			case 'R':
				page1_environment_protect();
				break;
		}	
	} 
}

void page1_centre3_effect(){
	rgb_set(0,0,0,189,252,201);
	system("cls");
	system("title 1.环境保护/3.影响讲解");
	cout<<"\t\t\t\t";
	Slert("3.影响讲解\n\n");
	rgb_set(48,128,20,189,252,201);
	alert(environment_protect_objects[2]);
	Sleep(2000);
	Slert("\n\n\n\n\t内容到底啦!点击R返回。");
	while(1){
		switch(getch()){
			case 'r':
				page1_environment_protect();
				break;
			case 'R':
				page1_environment_protect();
				break;
		}	
	}
} 

void page2_make_changes(){
	rgb_set(255,255,255,0,199,140);
	system("cls");
	system("title 2.改善生态环境");
	cout<<"\t\t\t    ";
	Slert("2.改善生态环境\n\n");
	Slert(" 1. 农业方面\n\n");
	Slert(" 2. 生态文明\n\n");
	Slert(" 3. 护林政策\n\n");
	Slert(" 4. 趣味答题\n\n");
	rgb_set(11,23,180,0,199,140);
	alert("(*输入相应数字,前往分支,返回首页请按R)");
flag:	switch(getch()) {
    	case '1':
        	page2_centre1_pl(); 
        	break;
    	case '2':
        	page2_centre2_eprp();
        	break;
    	case '3':
    		page2_centre3_pt();
			break;
    	case '4':
    		page4_questions("mb");
			break;
		case 'r':
			homepage();
			break;
		case 'R':
			homepage();
			break;
		default:
			goto flag;
			break;
    }
}
void page2_centre1_pl(){
	rgb_set(0,0,0,189,240,255);
	system("cls");
	system("title 2.改善生态环境/1.农业方面");
	cout<<"\t\t\t\t";
	Slert("1.农业方面\n\n");
	rgb_set(48,128,20,189,240,255);
	alert(make_ep_changes[0]);
	Sleep(2000);
	Slert("\n\n\n\n\t内容到底啦!点击R返回。");
	while(1){
		switch(getch()){
			case 'r':
				page2_make_changes();
				break;
			case 'R':
				page2_make_changes();
				break;
		}	
	}
}
void page2_centre2_eprp(){
	rgb_set(0,0,0,189,240,255);
	system("cls");
	system("title 2.改善生态环境/2.生态文明");
	cout<<"\t\t\t\t";
	Slert("2.生态文明\n\n");
	rgb_set(48,128,20,189,240,255);
	alert(make_ep_changes[1]);
	Sleep(2000);
	Slert("\n\n\n\n\t内容到底啦!点击R返回。");
	while(1){
		switch(getch()){
			case 'r':
				page2_make_changes();
				break;
			case 'R':
				page2_make_changes();
				break;
		}	
	}
}

void page2_centre3_pt(){
	rgb_set(0,0,0,189,240,255);
	system("cls");
	system("title 2.改善生态环境/3.护林政策");
	cout<<"\t\t\t\t";
	Slert("3.护林政策\n\n");
	rgb_set(48,128,20,189,240,255);
	alert(make_ep_changes[2]);
	Sleep(2000);
	Slert("\n\n\n\n\t内容到底啦!点击R返回。");
	while(1){
		switch(getch()){
			case 'r':
				page2_make_changes();
				break;
			case 'R':
				page2_make_changes();
				break;
		}	
	}
}

void page3_new_materials(){
	rgb_set(255,255,255,0,199,140);
	system("cls");
	system("title 3.开发新能源");
	cout<<"\t\t\t    ";
	Slert("3.开发新能源\n\n");
	Slert(" 1. 能源阐述\n\n");
	Slert(" 2. 发展现状\n\n");
	Slert(" 3. 亮眼特点\n\n");
	Slert(" 4. 趣味答题\n\n");
	rgb_set(11,23,180,0,199,140);
	alert("(*输入相应数字,前往分支,返回首页请按R)");
flag:	switch(getch()) {
    	case '1':
        	page3_centre1_figure_out();
        	break;
    	case '2':
        	page3_centre2_gn(); 
        	break;
    	case '3':
    		page3_centre3_sp();
			break;
    	case '4':
    		page4_questions("nm");
			break;
		case 'r':
			homepage();
			break;
		case 'R':
			homepage();
			break;
		default:
			goto flag;
			break;
    }
}

void page3_centre1_figure_out(){
	rgb_set(0,0,0,250,200,200);
	system("cls");
	system("title 3.开发新能源/1.能源阐述");
	cout<<"\t\t\t\t";
	Slert("1.能源阐述\n\n");
	rgb_set(48,128,20,250,200,200);
	alert(get_new_materials[0]);
	Sleep(2000);
	Slert("\n\n\n\n\t内容到底啦!点击R返回。");
	while(1){
		switch(getch()){
			case 'r':
				page3_new_materials();
				break;
			case 'R':
				page3_new_materials();
				break;
		}	
	} 
}

void page3_centre2_gn(){
	rgb_set(0,0,0,250,200,200);
	system("cls");
	system("title 3.开发新能源/2.发展现状");
	cout<<"\t\t\t\t";
	Slert("2.发展现状\n\n");
	rgb_set(48,128,20,250,200,200);
	alert(get_new_materials[1]);
	Sleep(2000);
	Slert("\n\n\n\n\t内容到底啦!点击R返回。");
	while(1){
		switch(getch()){
			case 'r':
				page3_new_materials();
				break;
			case 'R':
				page3_new_materials();
				break;
		}	
	} 
} 

void page3_centre3_sp(){
	rgb_set(0,0,0,250,200,200);
	system("cls");
	system("title 3.开发新能源/3.亮眼特点");
	cout<<"\t\t\t\t";
	Slert("3.亮眼特点\n\n");
	rgb_set(48,128,20,250,200,200);
	alert(get_new_materials[2]);
	Sleep(2000);
	Slert("\n\n\n\n\t内容到底啦!点击R返回。");
	while(1){
		switch(getch()){
			case 'r':
				page3_new_materials();
				break;
			case 'R':
				page3_new_materials();
				break;
		}	
	} 
}

void page4_questions(string mode){
	if(mode=="ep"){	
		rgb_set(0,0,0,189,252,201);
		system("cls");
		system("title 1.环境保护/4.趣味答题");
		cout<<"\t\t\t   ";
		Slert("4.趣味答题(环保部分)\n\n");
		rgb_set(255,153,18,189,252,201);
		cout<<"\t\t\t     ◎金币:"<<corn<<"\n";
		rgb_set(48,128,20,189,252,201);
		int score=0;
		char ans; 
		for(int i=1;i<=5;i++){
			cout<<i<<'.'; 
			Slert(question1[i-1]);
			Slert("\n\n请输入您的答案:_____\b\b\b\b\b");
			cin>>ans;
			
			if(ans==q1a[i-1]||ans==q1a[i-1]+32){
				corn++;
				rgb_set(0,0,0,189,252,201);
				system("cls");
				cout<<"\t\t\t   ";
				cout<<"4.趣味答题(环保部分)\n\n";
				rgb_set(255,153,18,189,252,201);
				cout<<"\t\t\t     ◎金币:"<<corn<<"\n";
				rgb_set(0,50,240,189,252,201);
				Slert("\t系统提示:");
				Slert(encourage[score++]);
			}else{
				rgb_set(0,0,0,189,252,201);
				system("cls");
				cout<<"\t\t\t   ";
				cout<<"4.趣味答题(环保部分)\n\n";
				rgb_set(255,153,18,189,252,201);
				cout<<"\t\t\t     ◎金币:"<<corn<<"\n";
				rgb_set(0,50,240,189,252,201);
				Slert("\t系统提示:信心来自于实力,实力来自于勤奋。继续加油!");
			}
			rgb_set(255,0,0,189,252,201);
			if(i!=5){
				cout<<"\n\n\t3s后跳转到下一题...";
				Sleep(1000);
				cout<<"\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b2s后跳转到下一题...";
				Sleep(1000);
				cout<<"\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b1s后跳转到下一题...";
				Sleep(1000);
			}else{
				cout<<"\n\n\t3s后跳转...";
				Sleep(1000);
				cout<<"\b\b\b\b\b\b\b\b\b\b\b2s后跳转...";
				Sleep(1000);
				cout<<"\b\b\b\b\b\b\b\b\b\b\b1s后跳转...";
				Sleep(1000);
			}
			rgb_set(0,0,0,189,252,201);
			system("cls");
			cout<<"\t\t\t   ";
			cout<<"4.趣味答题(环保部分)\n\n";
			rgb_set(255,153,18,189,252,201);
			cout<<"\t\t\t     ◎金币:"<<corn<<"\n";
			rgb_set(48,128,20,189,252,201);
		}
		if(score==5){
			chest(5,'1');
		}
		alert("\n\t恭喜您完成答题,点击R返回。");
		while(1){
			switch(getch()){
				case 'r':
					page1_environment_protect();
					break;
				case 'R':
					page1_environment_protect();
					break;
			}	
		}
	}
	else if(mode=="mb"){
		rgb_set(0,0,0,189,252,201);
		system("cls");
		system("title 2.改善生态环境/4.趣味答题");
		cout<<"\t\t\t   ";
		Slert("4.趣味答题(生态部分)\n\n");
		rgb_set(255,153,18,189,252,201);
		cout<<"\t\t\t     ◎金币:"<<corn<<"\n";
		rgb_set(48,128,20,189,252,201);
		int score=0;
		char ans; 
		for(int i=1;i<=5;i++){
			cout<<i<<'.'; 
			Slert(question2[i-1]);
			Slert("\n\n请输入您的答案:_____\b\b\b\b\b");
			cin>>ans;
			
			if(ans==q2a[i-1]||ans==q2a[i-1]+32){
				corn++;
				rgb_set(0,0,0,189,252,201);
				system("cls");
				cout<<"\t\t\t   ";
				cout<<"4.趣味答题(生态部分)\n\n";
				rgb_set(255,153,18,189,252,201);
				cout<<"\t\t\t     ◎金币:"<<corn<<"\n";
				rgb_set(0,50,240,189,252,201);
				Slert("\t系统提示:");
				Slert(encourage[score++]);
			}else{
				rgb_set(0,0,0,189,252,201);
				system("cls");
				cout<<"\t\t\t   ";
				cout<<"4.趣味答题(生态部分)\n\n";
				rgb_set(255,153,18,189,252,201);
				cout<<"\t\t\t     ◎金币:"<<corn<<"\n";
				rgb_set(0,50,240,189,252,201);
				Slert("\t系统提示:信心来自于实力,实力来自于勤奋。继续加油!");
			}
			rgb_set(255,0,0,189,252,201);
			if(i!=5){
				cout<<"\n\n\t3s后跳转到下一题...";
				Sleep(1000);
				cout<<"\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b2s后跳转到下一题...";
				Sleep(1000);
				cout<<"\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b1s后跳转到下一题...";
				Sleep(1000);
			}else{
				cout<<"\n\n\t3s后跳转...";
				Sleep(1000);
				cout<<"\b\b\b\b\b\b\b\b\b\b\b2s后跳转...";
				Sleep(1000);
				cout<<"\b\b\b\b\b\b\b\b\b\b\b1s后跳转...";
				Sleep(1000);
			}
			rgb_set(0,0,0,189,252,201);
			system("cls");
			cout<<"\t\t\t   ";
			cout<<"4.趣味答题(生态部分)\n\n";
			rgb_set(255,153,18,189,252,201);
			cout<<"\t\t\t     ◎金币:"<<corn<<"\n";
			rgb_set(48,128,20,189,252,201);
		}
		if(score==5){
			chest(5,'2');
		}
		alert("\n\t恭喜您完成答题,点击R返回。");
		while(1){
			switch(getch()){
				case 'r':
					page2_make_changes();
					break;
				case 'R':
					page2_make_changes();
					break;
			}	
		}
	}
	else if(mode=="nm"){
		rgb_set(0,0,0,189,252,201);
		system("cls");
		system("title 3.开发新能源/4.趣味答题");
		cout<<"\t\t\t   ";
		Slert("4.趣味答题(能源部分)\n\n");
		rgb_set(255,153,18,189,252,201);
		cout<<"\t\t\t     ◎金币:"<<corn<<"\n";
		rgb_set(48,128,20,189,252,201);
		int score=0;
		char ans; 
		for(int i=1;i<=5;i++){
			cout<<i<<'.'; 
			Slert(question3[i-1]);
			Slert("\n\n请输入您的答案:_____\b\b\b\b\b");
			cin>>ans;
			
			if(ans==q3a[i-1]||ans==q3a[i-1]+32){
				corn++;
				rgb_set(0,0,0,189,252,201);
				system("cls");
				cout<<"\t\t\t   ";
				cout<<"4.趣味答题(能源部分)\n\n";
				rgb_set(255,153,18,189,252,201);
				cout<<"\t\t\t     ◎金币:"<<corn<<"\n";
				rgb_set(0,50,240,189,252,201);
				Slert("\t系统提示:");
				Slert(encourage[score++]);
			}else{
				rgb_set(0,0,0,189,252,201);
				system("cls");
				cout<<"\t\t\t   ";
				cout<<"4.趣味答题(能源部分)\n\n";
				rgb_set(255,153,18,189,252,201);
				cout<<"\t\t\t     ◎金币:"<<corn<<"\n";
				rgb_set(0,50,240,189,252,201);
				Slert("\t系统提示:信心来自于实力,实力来自于勤奋。继续加油!");
			}
			rgb_set(255,0,0,189,252,201);
			if(i!=5){
				cout<<"\n\n\t3s后跳转到下一题...";
				Sleep(1000);
				cout<<"\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b2s后跳转到下一题...";
				Sleep(1000);
				cout<<"\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b1s后跳转到下一题...";
				Sleep(1000);
			}else{
				cout<<"\n\n\t3s后跳转...";
				Sleep(1000);
				cout<<"\b\b\b\b\b\b\b\b\b\b\b2s后跳转...";
				Sleep(1000);
				cout<<"\b\b\b\b\b\b\b\b\b\b\b1s后跳转...";
				Sleep(1000);
			}
			rgb_set(0,0,0,189,252,201);
			system("cls");
			cout<<"\t\t\t   ";
			cout<<"4.趣味答题(能源部分)\n\n";
			rgb_set(255,153,18,189,252,201);
			cout<<"\t\t\t     ◎金币:"<<corn<<"\n";
			rgb_set(48,128,20,189,252,201);
		}
		if(score==5){
			chest(5,'3');
		}
		alert("\n\t恭喜您完成答题,点击R返回。");
		while(1){
			switch(getch()){
				case 'r':
					page3_new_materials();
					break;
				case 'R':
					page3_new_materials();
					break;
			}	
		}
	}
	else{
		rgb_set(0,0,0,189,252,201);
		system("cls");
		system("title 4.趣味答题");
		cout<<"\t\t\t   ";
		Slert("4.趣味答题(综合部分)\n\n");
		rgb_set(255,153,18,189,252,201);
		cout<<"\t\t\t     ◎金币:"<<corn<<"\n";
		rgb_set(48,128,20,189,252,201);
		int score=0;
		char ans; 
		for(int i=1;i<=20;i++){
			cout<<i<<'.'; 
			Slert(question4[i-1]);
			Slert("\n\n请输入您的答案:_____\b\b\b\b\b");
			cin>>ans;
			
			if(ans==q4a[i-1]||ans==q4a[i-1]+32){
				corn++;
				rgb_set(0,0,0,189,252,201);
				system("cls");
				cout<<"\t\t\t   ";
				cout<<"4.趣味答题(综合部分)\n\n";
				rgb_set(255,153,18,189,252,201);
				cout<<"\t\t\t     ◎金币:"<<corn<<"\n";
				rgb_set(0,50,240,189,252,201);
				Slert("\t系统提示:");
				Slert(encourage[score++]);
			}else{
				rgb_set(0,0,0,189,252,201);
				system("cls");
				cout<<"\t\t\t   ";
				cout<<"4.趣味答题(综合部分)\n\n";
				rgb_set(255,153,18,189,252,201);
				cout<<"\t\t\t     ◎金币:"<<corn<<"\n";
				rgb_set(0,50,240,189,252,201);
				Slert("\t系统提示:信心来自于实力,实力来自于勤奋。继续加油!");
			}
			rgb_set(255,0,0,189,252,201);
			if(i!=20){
				cout<<"\n\n\t3s后跳转到下一题...";
				Sleep(1000);
				cout<<"\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b2s后跳转到下一题...";
				Sleep(1000);
				cout<<"\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b1s后跳转到下一题...";
				Sleep(1000);
			}else{
				cout<<"\n\n\t3s后跳转...";
				Sleep(1000);
				cout<<"\b\b\b\b\b\b\b\b\b\b\b2s后跳转...";
				Sleep(1000);
				cout<<"\b\b\b\b\b\b\b\b\b\b\b1s后跳转...";
				Sleep(1000);
			}
			rgb_set(0,0,0,189,252,201);
			system("cls");
			cout<<"\t\t\t   ";
			cout<<"4.趣味答题(综合部分)\n\n";
			rgb_set(255,153,18,189,252,201);
			cout<<"\t\t\t     ◎金币:"<<corn<<"\n";
			rgb_set(48,128,20,189,252,201);
		}
		if(score>=15){
			chest(30,'4');
		}
		alert("\n\t恭喜您完成答题,点击R返回。");
		while(1){
			switch(getch()){
				case 'r':
					homepage(); 
					break;
				case 'R':
					homepage();
					break;
			}	
		}
	}
} 

void finish(){
	rgb_set(245,245,245,0,199,140);
	system("cls");
	system("title 感谢您的使用");
	alert("\t不知不觉,");
	Sleep(300);
	alert("我们的旅程到达了终点。");
	Sleep(300);
	alert("不知道大家是否都有所学到呢?");
	Sleep(300);
	alert("\n\n\t在此感谢您的使用,期待下次再见。\n");
	Sleep(300);
	Slert("\
       ____ \n\
   .-\'&    \'-.\n\
  / 制作:金博欣\\\n\
 :   o    o    ;\n\
(      (_       )      科技创造,超越梦想!\n\
 :             ;\n\
  \\   \\__/    /\n\
   `-._____.-\'\n\
     /`\"\"\"`\\\n\
    /    ,  \\\n\
   /|/\\/\\/\\ _\\\n\
  (_|/\\/\\/\\\\__)\n\
    |_______|\n\
   __)_ |_ (__\n\
  (_____|_____)\n\
	");
	system("pause");	
}
 
void chest(int n,char w){
	rgb_set(255,97,0,189,252,201);
	system("cls");
	system("title 开宝箱");
	cout<<"\t\t\t\t";
	alert("宝箱\n\n");
	rgb_set(255,153,18,189,252,201);
	cout<<"\t\t\t     ◎金币:"<<corn<<"\n";
	rgb_set(255,97,0,189,252,201);
	Slert("   /###((\\o/))####/ |\n  /_____//^\\\\____/# |\n |       #       |# |\n |  超   #   宝  |# |\n |  级   #   箱  |#/\n |_______#____ __|/\n                     恭喜你全做对了,点击x键领取宝箱!)");
	while(1){
		switch(getch()){
			case 'x':{
				system("cls");
				cout<<"\t\t\t\t";
				alert("宝箱\n\n");
				rgb_set(255,153,18,189,252,201);
				cout<<"\t\t\t     ◎金币:"<<corn<<"\n";
				corn+=n;
				rgb_set(255,97,0,189,252,201);
				if(n<10){
					Slert("\\   恭喜您获得了    /\n \\   	  "); 
					cout<<n;
					Slert("        /\n  \\      枚       /\n   \\     ◎      /\n    \\           /\n\n\n"); 
				}else{
					Slert("\\   恭喜您获得了    /\n \\   	 "); 
					cout<<n;
					Slert("        /\n  \\      枚       /\n   \\     ◎      /\n    \\           /\n\n\n"); 
				} 
				
				rgb_set(0,97,255,189,252,201);
				cout<<"\n\n\t3s后返回...";
				Sleep(1000);
				cout<<"\b\b\b\b\b\b\b\b\b\b\b2s后返回...";
				Sleep(1000);
				cout<<"\b\b\b\b\b\b\b\b\b\b\b1s后返回...";
				Sleep(1000); 
				if(w=='1')
					page1_environment_protect();
				else if(w=='2')
					page2_make_changes();
				else if(w=='3')
					page3_new_materials();
				else
					homepage(); 
				break;
			}
			case 'X':{
				system("cls");
				cout<<"\t\t\t\t";
				alert("宝箱\n\n");
				rgb_set(255,153,18,189,252,201);
				cout<<"\t\t\t     ◎金币:"<<corn<<"\n";
				corn+=n;
				rgb_set(255,97,0,189,252,201);
				if(n<10){
					Slert("\\   恭喜您获得了    /\n \\   	  "); 
					cout<<n;
					Slert("        /\n  \\      枚       /\n   \\     ◎      /\n    \\           /\n\n\n"); 
				}else{
					Slert("\\   恭喜您获得了    /\n \\   	 "); 
					cout<<n;
					Slert("        /\n  \\      枚       /\n   \\     ◎      /\n    \\           /\n\n\n"); 
				} 
				
				rgb_set(0,97,255,189,252,201);
				cout<<"\n\n\t3s后返回...";
				Sleep(1000);
				cout<<"\b\b\b\b\b\b\b\b\b\b\b2s后返回...";
				Sleep(1000);
				cout<<"\b\b\b\b\b\b\b\b\b\b\b1s后返回...";
				Sleep(1000);
				if(w=='1')
					page1_environment_protect();
				else if(w=='2')
					page2_make_changes();
				else if(w=='3')
					page3_new_materials();
				else
					homepage();
				break;
			}
		}
	}
}

void rgb_init(){																// 初始化
	HANDLE hIn = GetStdHandle(STD_INPUT_HANDLE);		//输入句柄
	HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);		//输出句柄
	DWORD dwInMode, dwOutMode;
	GetConsoleMode(hIn, &dwInMode);						//获取控制台输入模式
	GetConsoleMode(hOut, &dwOutMode);					//获取控制台输出模式
	dwInMode |= 0x0200;									//更改
	dwOutMode |= 0x0004;
	SetConsoleMode(hIn, dwInMode);						//设置控制台输入模式
	SetConsoleMode(hOut, dwOutMode);					//设置控制台输出模式
}

void rgb_set(int wr,int wg,int wb,int br,int bg,int bb) {						//设置RGB
	printf("\033[38;2;%d;%d;%dm\033[48;2;%d;%d;%dm",wr,wg,wb,br,bg,bb);	//\033[38表示前景,\033[48表示背景,三个%d表示混合的数
}

        好了希望大家借鉴学习,本期就到这里了。

🧳总结

        本期我带大家学了:

        整体完善,项目1。

  

        下次我们将看更多我编的样例,敬请期待。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
C++写的一个简单的界面演示系统 void CMiniDrawDoc::AddFigure (CFigure *PFigure) { m_FigArray.Add (PFigure); SetModifiedFlag (); } CFigure *CMiniDrawDoc::GetFigure (int Index) { if (Index m_FigArray.GetUpperBound ()) return 0; return (CFigure *)m_FigArray.GetAt (Index); } int CMiniDrawDoc::GetNumFigs () { return m_FigArray.GetSize (); } void CMiniDrawDoc::DeleteContents() { // TODO: Add your specialized code here and/or call the base class int Index = m_FigArray.GetSize (); while (Index--) delete m_FigArray.GetAt (Index); m_FigArray.RemoveAll (); CDocument::DeleteContents(); } void CMiniDrawDoc::OnEditClearAll() { // TODO: Add your command handler code here DeleteContents (); UpdateAllViews (0); SetModifiedFlag (); } void CMiniDrawDoc::OnUpdateEditClearAll(CCmdUI* pCmdUI) { // TODO: Add your command update UI handler code here pCmdUI->Enable (m_FigArray.GetSize ()); } void CMiniDrawDoc::OnEditUndo() { // TODO: Add your command handler code here int Index = m_FigArray.GetUpperBound (); if (Index > -1) { delete m_FigArray.GetAt (Index); m_FigArray.RemoveAt (Index); } UpdateAllViews (0); SetModifiedFlag (); } void CMiniDrawDoc::OnUpdateEditUndo(CCmdUI* pCmdUI) { // TODO: Add your command update UI handler code here pCmdUI->Enable (m_FigArray.GetSize ()); } // implementation of figure classes: IMPLEMENT_SERIAL (CFigure, CObject, 3) CRect CFigure::GetDimRect () { return CRect (min (m_X1, m_X2), min (m_Y1, m_Y2), max (m_X1, m_X2) + 1, max (m_Y1, m_Y2) + 1); } void CFigure::Serialize (CArchive& ar) { if (ar.IsStoring ()) ar << m_X1 << m_Y1 << m_X2 << m_Y2 <> m_X1 >> m_Y1 >> m_X2 >> m_Y2 >> m_Color; } IMPLEMENT_SERIAL (CLine, CFigure, 3) CLine::CLine (int X1, int Y1, int X2, int Y2, COLORREF Color, int Thickness) { m_X1 = X1; m_Y1 = Y1; m_X2 = X2; m_Y2 = Y2; m_Color = Color; m_Thickness = Thickness; } void CLine::Serialize (CArchive& ar) { CFigure::Serialize (ar); if (ar.IsStoring ()) ar <> m_Thickness; } void CLine::Draw (CDC *PDC) { CPen Pen, *POldPen; // select pen/brush: Pen.CreatePen (PS_SOLID, m_Thickness, m_Color); POldPen = PDC->SelectObject (&Pen); // draw figure: PDC->MoveTo (m_X1, m_Y1); PDC->LineTo (m_X2, m_Y2); // remove pen/brush: PDC->SelectObject (POldPen); } IMPLEMENT_SERIAL (CRectangle, CFigure, 3) CRectangle::CRectangle (int X1, int Y1, int X2, int Y2, COLORREF Color, int Thickness) { m_X1 = X1; m_Y1 = Y1; m_X2 = X2; m_Y2 = Y2; m_Color = Color; m_Thickness = Thickness; } void CRectangle::Serialize (CArchive& ar) { CFigure::Serialize (ar); if (ar.IsStoring ()) ar <> m_Thickness; } void CRectangle::Draw (CDC *PDC) { CPen Pen, *POldPen; // select pen/brush: Pen.CreatePen (PS_INSIDEFRAME, m_Thickness, m_Color); POldPen = PDC->SelectObject (&Pen); PDC->SelectStockObject (NULL_BRUSH); // draw figure: PDC->Rectangle (m_X1, m_Y1, m_X2, m_Y2); // remove pen/brush: PDC->SelectObject (POldPen); } IMPLEMENT_SERIAL (CRectFill, CFigure, 3) CRectFill::CRectFill (int X1, int Y1, int X2, int Y2, COLORREF Color) { m_X1 = min (X1, X2); m_Y1 = min (Y1, Y2); m_X2 = max (X1, X2); m_Y2 = max (Y1, Y2); m_Color = Color; } void CRectFill::Draw (CDC *PDC) { CBrush Brush, *POldBrush; CPen Pen, *POldPen; // select pen/brush: Pen.CreatePen (PS_INSIDEFRAME, 1, m_Color); POldPen = PDC->SelectObject (&Pen); Brush.CreateSolidBrush (m_Color); POldBrush = PDC->SelectObject (&Brush); // draw figure: PDC->Rectangle (m_X1, m_Y1, m_X2, m_Y2); // remove pen/brush: PDC->SelectObject (POldPen); PDC->SelectObject (POldBrush); } IMPLEMENT_SERIAL (CRectRound, CFigure, 3) CRectRound::CRectRound (int X1, int Y1, int X2, int Y2, COLORREF Color, int Thickness) { m_X1 = min (X1, X2); m_Y1 = min (Y1, Y2); m_X2 = max (X1, X2); m_Y2 = max (Y1, Y2); m_Color = Color; m_Thickness = Thickness; } void CRectRound::Serialize (CArchive& ar) { CFigure::Serialize (ar); if (ar.IsStoring ()) ar <> m_Thickness; } void CRectRound::Draw (CDC *PDC) { CPen Pen, *POldPen; // select pen/brush: Pen.CreatePen (PS_INSIDEFRAME, m_Thickness, m_Color); POldPen = PDC->SelectObject (&Pen); PDC->SelectStockObject (NULL_BRUSH); // draw figure: int SizeRound = (m_X2 - m_X1 + m_Y2 - m_Y1) / 6; PDC->RoundRect (m_X1, m_Y1, m_X2, m_Y2, SizeRound, SizeRound); // remove pen/brush: PDC->SelectObject (POldPen); } IMPLEMENT_SERIAL (CRectRoundFill, CFigure, 3) CRectRoundFill::CRectRoundFill (int X1, int Y1, int X2, int Y2, COLORREF Color) { m_X1 = min (X1, X2); m_Y1 = min (Y1, Y2); m_X2 = max (X1, X2); m_Y2 = max (Y1, Y2); m_Color = Color; } void CRectRoundFill::Draw (CDC *PDC) { CBrush Brush, *POldBrush; CPen Pen, *POldPen; // select pen/brush: Pen.CreatePen (PS_INSIDEFRAME, 1, m_Color); POldPen = PDC->SelectObject (&Pen); Brush.CreateSolidBrush (m_Color); POldBrush = PDC->SelectObject (&Brush); // draw figure: int SizeRound = (m_X2 - m_X1 + m_Y2 - m_Y1) / 6; PDC->RoundRect (m_X1, m_Y1, m_X2, m_Y2, SizeRound, SizeRound); // remove pen/brush: PDC->SelectObject (POldPen); PDC->SelectObject (POldBrush); } IMPLEMENT_SERIAL (CCircle, CFigure, 3) CCircle::CCircle (int X1, int Y1, int X2, int Y2, COLORREF Color, int Thickness) { m_X1 = min (X1, X2); m_Y1 = min (Y1, Y2); m_X2 = max (X1, X2); m_Y2 = max (Y1, Y2); m_Color = Color; m_Thickness = Thickness; } void CCircle::Serialize (CArchive& ar) { CFigure::Serialize (ar); if (ar.IsStoring ()) ar <> m_Thickness; } void CCircle::Draw (CDC *PDC) { CPen Pen, *POldPen; // select pen/brush: Pen.CreatePen (PS_INSIDEFRAME, m_Thickness, m_Color); POldPen = PDC->SelectObject (&Pen); PDC->SelectStockObject (NULL_BRUSH); // draw figure: PDC->Ellipse (m_X1, m_Y1, m_X2, m_Y2); // remove pen/brush: PDC->SelectObject (POldPen); } IMPLEMENT_SERIAL (CCircleFill, CFigure, 3) CCircleFill::CCircleFill (int X1, int Y1, int X2, int Y2, COLORREF Color) { m_X1 = min (X1, X2); m_Y1 = min (Y1, Y2); m_X2 = max (X1, X2); m_Y2 = max (Y1, Y2); m_Color = Color; } void CCircleFill::Draw (CDC *PDC) { CBrush Brush, *POldBrush; CPen Pen, *POldPen; // select pen/brush: Pen.CreatePen (PS_INSIDEFRAME, 1, m_Color); POldPen = PDC->SelectObject (&Pen); Brush.CreateSolidBrush (m_Color); POldBrush = PDC->SelectObject (&Brush); // draw figure: PDC->Ellipse (m_X1, m_Y1, m_X2, m_Y2); // remove pen/brush: PDC->SelectObject (POldPen); PDC->SelectObject (POldBrush); }
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值