喜欢的自取
单人模式:
#include<bits/stdc++.h>
#include<ctime>
#include<windows.h>
#include<time.h>
using namespace std;
int a[9],n=0,n1=0,zds,smz=6,smz1=6,k,swx=0,sh=1,sh1=1,s,ds,kg;
int main(){
srand(time(NULL));
ds=rand()%2;
for(int i=1;i>=0;i++){
zds=rand()%6+3;
for(int j=1;j<=zds;j++){
a[j]=rand()%2;
if(n==zds-2){
n1=2;
a[zds]=1;
a[zds-1]=1;
break;
}
if(n1==zds-2){
n=2;
a[zds]=0;
a[zds-1]=0;
break;
}
if(a[j]==0)n++;
else n1++;
}
cout<<"这次共有"<<n1<<"颗实弹和"<<n<<"颗虚弹"<<endl<<"现在你还有"<<smz<<"点生命值,敌方还有"<<smz1<<"点生命值"<<endl;
for(int j=1;j<=zds;j++){
if(k==0){
cout<<"选择对象,0:自己 1:敌方"<<endl;
if(i&&j){
cin>>s;
}
if(s==0){
if(a[j]==1){
smz-=sh;
cout<<"你朝自己开了一枪,是实弹,生命值减"<<sh<<",但你获得了下一次开枪的机会。"<<endl;
n1--;
}else{
cout<<"你朝自己开了一枪,很幸运是虚弹,你获得了下一次开枪的机会。"<<endl;
n--;
}
}else if(s==1){
if(a[j]==1){
smz1-=sh;
cout<<"你朝敌方开了一枪,是实弹,敌方生命值减"<<sh<<",下一次轮敌方开枪。"<<endl;
n1--;
k=1;
}else{
cout<<"你朝敌方开了一枪,是虚弹,下一次轮敌方开枪。"<<endl;
n--;
k=1;
}
}else{
cout<<"输入错误";
return 0;
}
}
else if(k==1){
if(n>n1){
ds=0;
}else{
ds=1;
}
cout<<ds<<endl;
if(ds==0){
if(a[j]==1){
smz1-=sh;
cout<<"敌方朝自己开了一枪,是实弹,生命值减"<<sh1<<",但他获得了下一次开枪的机会。"<<endl;
n1--;
}else{
cout<<"敌方朝自己开了一枪,是虚弹,他获得了下一次开枪的机会。"<<endl;
n--;
}
}else if(ds==1){
if(a[j]==1){
smz-=sh;
cout<<"敌方朝你开了一枪,是实弹,你的生命值减"<<sh1<<",下一次轮你开枪。"<<endl;
n1--;
k=0;
}else{
cout<<"敌方朝你开了一枪,很幸运是虚弹,下一次轮你开枪。"<<endl;
n--;
k=0;
}
}
}
if(smz<=0){
cout<<"你的生命值归零,你输了。";
return 0;
}else if(smz1<=0){
cout<<"敌方的生命值归零,你赢得了500000¥的大奖。";
return 0;
}
if(j==zds){
cout<<"子弹耗尽,重新装填"<<endl;
break;
}
}
n=0;
n1=0;
k=0;
cout<<endl;
}
return 0;
}
双人模式:
#include<bits/stdc++.h>
#include<ctime>
#include<windows.h>
#include<time.h>
using namespace std;
int a[9],n=0,n1=0,zds,smz=6,smz1=6,k,swx=0,sh=1,sh1=1,s,ds,kg;
char player1[101],player2[101];
int main(){
cout<<"请输入player1的名字:";
cin>>player1;
cout<<"请输入player2的名字:";
cin>>player2;
srand(time(NULL));
for(int i=1;i>=0;i++){
zds=rand()%6+3;
for(int j=1;j<=zds;j++){
a[j]=rand()%2;
if(n==zds-2){
n1=2;
a[zds-1]=1;
a[zds]=1;
//cout<<1<<" "<<1;
break;
}
if(n1==zds-2){
n=2;
a[zds-1]=0;
a[zds]=0;
//cout<<0<<" "<<0;
break;
}
if(a[j]==0)n++;
else n1++;
//cout<<a[j];
}
cout<<"这次共有"<<n1<<"颗实弹和"<<n<<"颗虚弹"<<endl<<"现在"<<player1<<"还有"<<smz<<"点生命值,"<<player2<<"还有"<<smz1<<"点生命值"<<endl;
for(int j=1;j<=zds;j++){
if(k==0){
cout<<player1<<"选择对象,0:"<<player1<<" 1:"<<player2<<endl;
cin>>s;
if(s==0){
if(a[j]==1){
smz-=sh;
cout<<player1<<"朝自己开了一枪,是实弹,生命值减"<<sh<<","<<player1<<"获得了下一次开枪的机会。"<<endl;
n1--;
}else{
cout<<player1<<"朝自己开了一枪,是虚弹"<<","<<player1<<"获得了下一次开枪的机会。"<<endl;
n--;
}
}else if(s==1){
if(a[j]==1){
smz1-=sh;
cout<<player1<<"朝"<<player2<<"开了一枪,是实弹,"<<player2<<"生命值减"<<sh<<",下一次轮"<<player2<<"开枪。"<<endl;
n1--;
k=1;
}else{
cout<<player1<<"朝"<<player2<<"开了一枪,是虚弹,下一次轮"<<player2<<"开枪。"<<endl;
n--;
k=1;
}
}else{
cout<<"输入错误";
return 0;
}
}else{
cout<<player2<<"选择对象,0:"<<player2<<" 1:"<<player1<<endl;
cin>>ds;
if(ds==0){
if(a[j]==1){
smz1-=sh;
cout<<player2<<"朝自己开了一枪,是实弹,生命值减"<<sh1<<","<<player2<<"获得了下一次开枪的机会。"<<endl;
n1--;
}else{
cout<<player2<<"朝自己开了一枪,是虚弹,"<<player2<<"获得了下一次开枪的机会。"<<endl;
n--;
}
}else if(ds==1){
if(a[j]==1){
smz-=sh;
cout<<player2<<"朝"<<player1<<"开了一枪,是实弹,"<<player1<<"的生命值减"<<sh1<<",下一次轮"<<player1<<"开枪。"<<endl;
n1--;
k=0;
}else{
cout<<player2<<"朝"<<player1<<"开了一枪,是虚弹,下一次轮你开枪。"<<endl;
n--;
k=0;
}
}else{
cout<<"输入错误";
return 0;
}
}
if(smz<=0){
cout<<player1<<"的生命值归零,"<<player2<<"获胜。";
return 0;
}else if(smz1<=0){
cout<<player2<<"的生命值归零,"<<player1<<"获胜。";
return 0;
}
if(j==zds){
cout<<"子弹耗尽,子弹刷新"<<endl;
break;
}
}
n=0;
n1=0;
cout<<endl;
}
return 0;
}