c++基本语法入门小游戏
#include <iostream>
using namespace std;
double shengmingli=200;//初始生命力
int gongjili=10;//初始攻击力
int fangyuli=20;//初始防御力
int money=200;//初始金钱数量
bool guoguan;//是否通关判定
void wuqidian();//武器店函数
void yaodian();//药店函数
void guaiwu1();//小怪物函数
void guaiwu2();//大怪物函数
int main()
{
cout<<"欢迎!\n";
cout<<"小镇\n";
cout<<"月溪镇。\n有一家药店"<<endl;
cout<<"和一家武器店。\n";
int xiaozhen;//定义选择项目
cout<<"1.去武器店"<<endl;
cout<<"2.去药品店"<<endl;
cout<<"3.去打小怪"<<endl;
cout<<"4.去打大怪"<<endl;
cout<<"5.退出游戏"<<endl;
cout<<"6.显示你的状态"<<endl;
cin>>xiaozhen;
while(xiaozhen!=5)//输入5时退出游戏
{
if(shengmingli<=0)//生命力小于等于0时游戏结束
{
cout<<"你死啦!"<<endl;
break;
}
if(guoguan)
{
cout<<"恭喜通关!"<<endl;
break;
}
if(xiaozhen==6)//输入6可检测自己的状态
{
cout<<"生命力:"<<shengmingli<<endl;
cout<<"攻击力:"<<gongjili<<endl;
cout<<"防御力:"<<fangyuli<<endl;
cout<<"钱:"<<money<<endl;
}
else
switch(xiaozhen)
{
case 1 : wuqidian();break;
case 2 : yaodian();break;
case 3 : guaiwu1();break;
case 4 : guaiwu2();break;
default : cout<<"err!"<<endl;break;
}
cin>>xiaozhen;
}
if(xiaozhen==5)
{
cout<<"正在退出游戏……"<<endl;
}
cin.get();
cin.get();
return 0;
}
void wuqidian()
{
cout<<"欢迎来到武器店!"<<endl;
cout<<"1、买刀(加攻击力)"<<endl;
cout<<"2、买剑(加攻击力)"<<endl;
cout<<"3、买枪(加攻击力)"<<endl;
cout<<"4、买锯(加攻击力)"<<endl;
cout<<"5、买盾(加防御力)"<<endl;
cout<<"7、离开武器店"<<endl;
int wuqidian;
cin>>wuqidian;
while(wuqidian!=7)//输入7时结束函数
{
switch(wuqidian)
{
case 1 : if(money<10)
cout<<"钱不够"<<endl;//钱不够时返回Flase
else
cout<<"购买成功!"<<endl;//钱足够时返回True
gongjili+=20;
money-=10;
break;
case 2 : if(money<20)
cout<<"钱不够"<<endl;
else
cout<<"成功!"<<endl;
gongjili+=40;
money-=20;
break;
case 3 : if(money<30)
cout<<"钱不够"<<endl;
else
cout<<"成功!"<<endl;
gongjili+=60;
money-=30;
break;
case 4 : if(money<40)
cout<<"钱不够"<<endl;
else
cout<<"成功!"<<endl;
gongjili+=100;
money-=40;
break;
case 5 : if(money<10)
cout<<"钱不够"<<endl;
else
cout<<"成功!"<<endl;
fangyuli+=30;
money-=10;
break;
fangyuli+=60;
money-=20;
break;
default : cout<<"无"<<endl;
break;
}
cin>>wuqidian;
}
if(wuqidian==7)
{ //返回main()主函数
cout<<"欢迎再来!"<<endl;
cout<<"月溪镇\n";
cout<<"周围有一条河,有一片树林,很多房子和很多人。\n有一家药店"<<endl;
cout<<"和一家武器店。\n";
cout<<"1.去武器店"<<endl;
cout<<"2.去药品店"<<endl;
cout<<"3.去打小怪"<<endl;
cout<<"4.去打大怪"<<endl;
cout<<"5.退出游戏"<<endl;
cout<<"6.显示状态"<<endl;
}
}
/*
yaodian()的设置与wuqidian()相同,可参照阅读.
*/
void yaodian()
{
cout<<"欢迎来到药品店!"<<endl;
cout<<"1、买1号补血药(加生命)"<<endl;
cout<<"2、买2号补血药(加生命力)"<<endl;
cout<<"3、买3号补血药(加生命力)"<<endl;
cout<<"4、离开武器店"<<endl;
int yaodian;
cin>>yaodian;
while(yaodian!=1)
{
switch(yaodian)
{
case 1 : if(money<10)
cout<<"钱不够"<<endl;
else
cout<<"成功!"<<endl;
shengmingli+=30;
money-=10;
break;
case 2 : if(money<20)
cout<<"钱不够"<<endl;
else
cout<<"成功!"<<endl;
shengmingli+=50;
money-=1;
break;
case 3 : if(money<40)
cout<<"钱不够"<<endl;
else
cout<<"成功!"<<endl;
shengmingli+=100;
money-=40;
break;
default : cout<<"无"<<endl;
break;
}
cin>>yaodian;
}
if(yaodian==4)
{
cout<<"欢迎再来!"<<endl;
cout<<"月溪镇\n";
cout<<"。周围有一条河,有一片树林,很多房子和很多人。\n有一家药店"<<endl;
cout<<"和一家武器店。\n";
cout<<"1.去武器店"<<endl;
cout<<"2.去药品店"<<endl;
cout<<"3.去打小怪物"<<endl;
cout<<"4.去打大怪物"<<endl;
cout<<"5.退出游戏"<<endl;
cout<<"6.显示你的状态"<<endl;
}
}
/*这里是两个战斗函数,使用指针来处理.避免造成内存崩溃.*/
void guaiwu1()
{
cout<<"开始与小怪物战斗!!!"<<endl;
double* g_shengmingli=new double;//定义怪物生命
int* g_gongjili=new int;//定义怪物攻击力
int* g_fangyuli=new int;//定义怪物防御力
int* g_money=new int;//定义怪物金钱
*g_shengmingli=20;
*g_gongjili=1;
*g_fangyuli=1;
*g_money=50;
double* tongji1=new double;//用来计算主角对怪物的杀伤
double* tongji2=new double;//用来计算怪物对主角的杀伤
*tongji1=0;
*tongji2=0;
int* huihe=new int;//定义回合数
*huihe=1;
cout<<"你开始对小怪物进行攻击!"<<endl;
int* xuanze=new int;
/*
攻击计算公式
杀伤=攻击力*2-防御力
玩家每回合可以选择攻击与逃跑
*/
while((*g_shengmingli)>0 && shengmingli>0 && (*xuanze)!=2)
{
cout<<"现在是"<<"第"<<*huihe<<"回合!"<<endl;
cout<<"请选择你的动作:\n";
cout<<"1、攻击\n2、逃跑\n";
cin>>*xuanze;
switch((*xuanze))
{
case 1 : cout<<"你对小怪物发动了攻击!"<<endl;
*g_shengmingli-=gongjili*2-(*g_fangyuli);
*tongji1=gongjili*2-(*g_fangyuli);
cout<<"你打掉了小怪物"<<*tongji1<<"的生命!"<<endl;
cout<<"小怪物还剩"<<(*g_shengmingli)-(*tongji1)<<"点生命"<<endl;
shengmingli-=(*g_gongjili)*2-fangyuli;
*tongji2=(*g_gongjili)*2-fangyuli;
cout<<"小怪物对你发动了攻击!"<<endl;
cout<<"小怪物打掉了你"<<*tongji2<<"的生命!"<<endl;
cout<<"你还剩"<<shengmingli-(*tongji2)<<"点生命"<<endl;break;
case 2 : cout<<"你决定逃跑!"<<endl;
cout<<"逃跑成功!"<<endl;continue;
default : cout<<"请不要乱选!"<<endl;
}
(*huihe)++;
}
if((*g_shengmingli)<=0)
{//杀死怪物后的返回
cout<<"小怪物被你杀死了!你真厉害!!!"<<endl;
money+=(*g_money);
cout<<"小镇\n";
cout<<"一个1000年的小镇。周围有一条河,有一片树林,很多房子和很多人。\n有一家药店"<<endl;
cout<<"和一家武器店。\n";
cout<<"1.去武器店"<<endl;
cout<<"2.去药品店"<<endl;
cout<<"3.去打小怪物"<<endl;
cout<<"4.去打大怪物"<<endl;
cout<<"5.退出游戏"<<endl;
cout<<"6.显示你的状态"<<endl;
}
else
if(shengmingli<=0)
{//被怪物杀死后的返回
cout<<"你被小怪物杀死了!游戏结束!!!"<<endl;
}
else
if((*xuanze)==2)
{//逃跑的返回
cout<<"你逃回了小镇!"<<endl;
cout<<"小镇\n";
cout<<"一个1000年的小镇。周围有一条河,有一片树林,很多房子和很多人。\n有一家药店"<<endl;
cout<<"和一家武器店。\n";
cout<<"1.去武器店"<<endl;
cout<<"2.去药品店"<<endl;
cout<<"3.去打小怪物"<<endl;
cout<<"4.去打大怪物"<<endl;
cout<<"5.退出游戏"<<endl;
cout<<"6.显示你的状态"<<endl;
}
delete g_shengmingli;
delete g_gongjili;
delete g_fangyuli;
delete g_money;
delete tongji1;
delete tongji2;
}
/*
设置均与void函数guaiwu1()相同,可参照上例阅读.
*/
void guaiwu2()
{
cout<<"开始与大怪物战斗!!!"<<endl;
double* g_shengmingli=new double;
int* g_gongjili=new int;
int* g_fangyuli=new int;
*g_shengmingli=50;
*g_gongjili=15;
*g_fangyuli=10;
double* tongji1=new double;
double* tongji2=new double;
*tongji1=0;
*tongji2=0;
int* huihe=new int;
*huihe=1;
cout<<"你开始对大怪物进行攻击!"<<endl;
int* xuanze=new int;
while((*g_shengmingli)>0 && shengmingli>0 && (*xuanze)!=2)
{
cout<<"现在是"<<"第"<<*huihe<<"回合!"<<endl;
cout<<"请选择你的动作:\n";
cout<<"1、攻击\n2、逃跑\n";
cin>>*xuanze;
switch((*xuanze))
{
case 1 : cout<<"你对大怪物发动了攻击!"<<endl;
*g_shengmingli-=gongjili*2-(*g_fangyuli);
*tongji1=gongjili*2-(*g_fangyuli);
cout<<"你打掉了大怪物"<<*tongji1<<"的生命!"<<endl;
cout<<"大怪物还剩"<<(*g_shengmingli)-(*tongji1)<<"点生命"<<endl;
shengmingli-=(*g_gongjili)*2-fangyuli;
*tongji2=(*g_gongjili)-fangyuli;
cout<<"大怪物对你发动了攻击!"<<endl;
cout<<"大怪物打掉了你"<<*tongji2<<"的生命!"<<endl;
cout<<"你还剩"<<shengmingli-(*tongji2)<<"点生命"<<endl;break;
case 2 : cout<<"你决定逃跑!"<<endl;
cout<<"逃跑成功!"<<endl;continue;
default : cout<<"请不要乱选!"<<endl;
}
(*huihe)++;
}
if((*g_shengmingli)<=0)
{
cout<<"大怪物被你杀死了!你真厉害!!!"<<endl;
guoguan=true;
cout<<"小镇\n";
cout<<"一个1000年的小镇。周围有一条河,有一片树林,很多房子和很多人。\n有一家药店"<<endl;
cout<<"和一家武器店。\n";
cout<<"1.去武器店"<<endl;
cout<<"2.去药品店"<<endl;
cout<<"3.去打小怪物"<<endl;
cout<<"4.去打大怪物"<<endl;
cout<<"5.退出游戏"<<endl;
cout<<"6.显示你的状态"<<endl;
}
else
if(shengmingli<=0)
{
cout<<"你被大怪物杀死了!游戏结束!!!"<<endl;
}
else
if((*xuanze)==2)
{
cout<<"你逃回了小镇!"<<endl;
cout<<"小镇\n";
cout<<"一个1000年的小镇。周围有一条河,有一片树林,很多房子和很多人。\n有一家药店"<<endl;
cout<<"和一家武器店。\n";
cout<<"1.去武器店"<<endl;
cout<<"2.去药品店"<<endl;
cout<<"3.去打小怪物"<<endl;
cout<<"4.去打大怪物"<<endl;
cout<<"5.退出游戏"<<endl;
cout<<"6.显示你的状态"<<endl;
}
delete g_shengmingli;
delete g_gongjili;
delete g_fangyuli;
delete tongji1;
delete tongji2;
}
c++基本语法入门小游戏相关推荐
- python打地鼠游戏教程_Python入门小游戏,炫酷打地鼠教程第二部分,都是干货
还记得那位玩打地鼠小游戏,然后学会python的女白领吗? 那份教程还没有写完,只写到了对游戏中精灵的定义,然后我们继续写. 实现了游戏精灵的定义后,我们就要开始展现真正的技术啦,也就是写主程序. 首 ...
- Java实战项目:新手入门小游戏——连连看超详细教程
小伙伴们应该都玩过连连看吧,今天呢叫大家用Java制作一个属于自己的连连看小游戏! 众所周知,想要学好Java光看视频或看书是不行的,一定要动手实践才可以,而且在面试中,面试官也会问你做过些什么项目? ...
- 10个python入门小游戏,零基础打通关,就能掌握编程基础
前言 不会python就不能用python开发入门级的小游戏? 当然不是,我收集了十个python入门小游戏的源码和教程,并且即使你没有python基础,只要跟着这十个小游戏的开发详细教程去做,以及有 ...
- python入门小游戏代码20行,python入门小游戏代码
python入门可以做的小游戏 1.Python入门拼图小游戏简单介绍:将图像分为m×n个矩形块,并将图像右下角的矩形块替换为空白块后,将这些矩形块随机摆放成原图像的形状. 2.Python入门推箱子 ...
- Python入门小游戏:剪刀石头布
经过前几天的学习,相信小白们已经对Python有了初步的了解和掌握了. 下面,教你们一个入门小游戏,石头剪刀布. 在这个游戏里,我们用到了一个循环:for循环,引用了一个random库. 我们知道,石 ...
- 用Construct 2制作入门小游戏~
今天在软导课上了解到了Construct 2这个神器,本零基础菜鸟决定尝试做一个简单的小游戏(实际上是入门的教程啊= = 首先呢,肯定是到官网下载软件啊,点击我下载~ 等安装完毕后我便按照新手教程开始 ...
- python入门小游戏之跳一跳_从零基础开始,用python手把手教你玩跳一跳小游戏,直接打出高分...
这对于很多人来说,可能是已经过时的游戏,但是对于python入门来说,却是一个非常值得学习的项目. TONOW收集了很多有关python入门的项目案例,包含了相应的教程和源码,哪怕你从未接触编程,也通 ...
- Unity入门小游戏 变色跑酷
这个游戏比较非常适合新手做入门实践的小游戏,它的制作分为三个部分: 1--场景的搭建 游戏场景的搭建,可借助V键进行快速对齐,因为这是一款跑酷游戏,故游戏的难度也应从简单到逐渐困难,这就需要各位萌新发 ...
- python入门——小游戏“石头剪刀布”
文章目录 前言 一.石头剪刀布小游戏 1.1游戏简介 1.2.开发环境.编译语言及所需要的库 1.3.游戏设计与实现 1.4.游戏完整代码块 二.总结 前言 随着人工智能的不断发展,python这门语 ...
最新文章
- smbpasswd 和 pdbedit 的区别
- NFS介绍、NFS服务端配置安装配置、 NFS配置选项、 客户端的配置
- C语言循环队列的实现方法,C语言循环队列(数组实现)
- MySQL coalesce()函数
- C#LeetCode刷题之#852-山脉数组的峰顶索引(Peak Index in a Mountain Array)
- DM8168 TILER(2)
- python---用python实现插入排序
- 数据挖掘中的KNN算法实现论文
- 饥荒联机版专用服务器主机性能较差,饥荒联机版为什么启动服务器慢 | 手游网游页游攻略大全...
- 【小样本基础】小样本学习方法总结:模型微调、数据增强、迁移学习
- 56个民族下拉选择框
- linux清除密码记录
- java流分类_什么是流分类-JAVA中什么是流?流经常按照哪几种方式分类,每种方式又将流各分? 爱问知识人...
- 可用性及测试方法小介绍
- 关于Bundle Adjustment(BA)的直观理解
- Altium Designer 19 错误警告 Design contains shelved or modified (but not repoured) polygons
- android播放语音,切换听筒模式遇到的问题
- 羊毛出在狗身上让猪来买单 - 智能音箱背后的平台经济...
- Unity 编辑时 Excel表格导入方法
- 什么是JRE?Java运行环境简介
热门文章
- c#申请126邮箱 有时提交不了
- 时空之轮Android手柄,经典角色扮演类游戏 Android时空之轮
- 机房动力环境监控系统
- 东京奥运会完美收官,来看看这届奥运会都有哪些人工智能黑科技
- 微软被曝泄露2.4TB客户敏感数据;亚马逊因滥用算法面临集体诉讼;推特否认马斯克将裁员75%的传闻 | 每日大事件...
- 监测数据报表系统使用和安装说明
- 数学语言缩写 c连续d可导,数学分析(1)复习题
- [立此存照][转载]昆明小区道路改公用道路新闻两篇
- Bandzip与360压缩
- 大家都看得见学计算机的决定,卢须振二丫-图书检索系统.PDF