摆烂小猫呐 2021-10-29 15:11 采纳率: 66.7%
浏览 7
已结题

为什么不能正常运行,无法进行for的内容


#include<bits/stdc++.h>
#include<stdio.h>
using namespace std;

struct function
{
    int loves[15];                    //好感度 
    string name[15];                  //名字 
    string level[15];                 //等级
    int identify[15];                 //识别标识 
};

int main()
{
    int command;
    int shu=3;                            //记录妃子数量 
    int i=1;
    int num=0;                           //记录有多少妃子好感度小于等于50 
    string chong,leng; 
    struct function woman;
    for(int a=0;a<15;a++)
    {
        woman.identify[a]=0;
    }
    //开局的妃子:                   妃子等级:皇后300,皇贵妃250,贵妃200,贤妃150,昭仪100,淑仪80,贵人60 
    woman.name[0]="赵飞燕";woman.loves[0]=100;woman.level[0]="昭仪"; 
    woman.name[1]="貂蝉";woman.loves[1]=100;woman.level[1]="昭仪";
    woman.name[2]="杨玉环";woman.loves[2]=100;woman.level[2]="昭仪";
    int day=1;
    
    for(;;)
    {
        cout<<endl<<"第"<<day<<"天!"<<endl;
        cout<<"皇上请下旨"<<endl;
        cout<<"1、皇帝下旨选妃!                 (增加)"<<endl<<"2、翻牌宠幸!                     (修改状态)"<<endl<<"3、打入冷宫!                     (删除)"<<endl<<"4、朕的爱妃呢?                   (查找)\t"<<endl;                           
        scanf("%d",&command);
        if(command==1)
        {
            cout<<endl<<"想要选谁为妃子?  "<<endl;
            for(int b=0;b<15;b++)
            {
                if(woman.identify[b]==0)
                {
                    cin>>woman.name[b];
                    woman.level[b]="淑仪";
                    woman.loves[b]=100;
                    shu++;
                    cout<<"其他妃子好感度-10"<<endl; 
                    for(int d=0;d<15;d++)
                    {
                        if(woman.identify[d]==1&&d!=b)                   //妃子状态变动 
                        {
                            woman.loves[d]-=10;
                            if(woman.loves[d]>=300) woman.level[d]="皇后";
                            if(woman.loves[d]>=250&&woman.loves[d]<300) woman.level[d]="皇贵妃";
                            if(woman.loves[d]>=200&&woman.loves[d]<250) woman.level[d]="贵妃"; 
                            if(woman.loves[d]>=150&&woman.loves[d]<200) woman.level[d]="贤妃";
                            if(woman.loves[d]>=100&&woman.loves[d]<150) woman.level[d]="昭仪";
                            if(woman.loves[d]>=80&&woman.loves[d]<100)  woman.level[d]="淑仪";
                            else
                                woman.level[d]="贵人"; 
                        }
                    }
                    break;
                }
                else
                    continue;
            }
        }
        else if(command==2)
        {
            cout<<endl<<"皇上您要宠幸谁?"; 
            cin>>chong;
            cout<<"朕要宠幸";
            for(int c=0;c<15;c++)
            {
                if(woman.name[c]==chong)
                {
                    cout<<chong<<endl<<"其他妃子好感度降低10"<<endl;
                    for(int d=0;d<15;d++)   
                    {
                        if(woman.identify[d]==1&&d!=c)                   //妃子状态变动 
                        {
                            woman.loves[d]-=10;
                            if(woman.loves[d]>=300) woman.level[d]="皇后";
                            if(woman.loves[d]>=250&&woman.loves[d]<300) woman.level[d]="皇贵妃";
                            if(woman.loves[d]>=200&&woman.loves[d]<250) woman.level[d]="贵妃"; 
                            if(woman.loves[d]>=150&&woman.loves[d]<200) woman.level[d]="贤妃";
                            if(woman.loves[d]>=100&&woman.loves[d]<150) woman.level[d]="昭仪";
                            if(woman.loves[d]>=80&&woman.loves[d]<100)  woman.level[d]="淑仪";
                            else
                                woman.level[d]="贵人";
                            break;
                        }
                    }
                }
                    if(c<=shu&&woman.name[c]!=chong)
                    {
                        cout<<"皇上想"<<chong<<"想疯了"<<endl;
                        cout<<"快!快把"<<chong<<"招进宫里来"<<endl<<"其他妃子好感度降低10"<<endl;;
                        for(int b=0;b<15;b++)
                        {        
                            if(woman.identify[b]!=0)
                            {
                                woman.name[b]=chong;
                                woman.level[b]="淑仪";
                                woman.loves[b]=100;
                                for(int d=0;d<15;d++)
                                {
                                    if(woman.identify[d]==1&&d!=b)                   //妃子状态变动 
                                    {
                                        woman.loves[d]-=10;
                                        if(woman.loves[d]>=300) woman.level[d]="皇后";
                                        if(woman.loves[d]>=250&&woman.loves[d]<300) woman.level[d]="皇贵妃";
                                        if(woman.loves[d]>=200&&woman.loves[d]<250) woman.level[d]="贵妃"; 
                                        if(woman.loves[d]>=150&&woman.loves[d]<200) woman.level[d]="贤妃";
                                        if(woman.loves[d]>=100&&woman.loves[d]<150) woman.level[d]="昭仪";
                                        if(woman.loves[d]>=80&&woman.loves[d]<100)  woman.level[d]="淑仪";
                                        else
                                            woman.level[d]="贵人"; 
                                    }
                                }
                                break;
                            }
                            
                        }
                        break;
                    }
            }
        }
        else if(command==3)
        {
            cout<<endl<<"皇上您要将谁打入冷宫?"<<endl;
            cin>>leng;
            cout<<leng<<":皇上三思啊,不要离开臣妾!"<<endl<<leng<<"已被打入冷宫"<<endl<<"其他妃子好感度+10"<<endl;
            for(int e=0;e<15;e++)
            {
                if(woman.name[e]==leng)
                {
                    woman.identify[e]=0;
                    shu--;
                    for(int d=0;d<15;d++)
                    {
                        if(woman.identify[d]==1&&d!=e)                   //妃子状态变动 (增加) 
                        {
                            woman.loves[d]+=10;
                            if(woman.loves[d]>=300) woman.level[d]="皇后";
                            if(woman.loves[d]>=250&&woman.loves[d]<300) woman.level[d]="皇贵妃";
                            if(woman.loves[d]>=200&&woman.loves[d]<250) woman.level[d]="贵妃"; 
                            if(woman.loves[d]>=150&&woman.loves[d]<200) woman.level[d]="贤妃";
                            if(woman.loves[d]>=100&&woman.loves[d]<150) woman.level[d]="昭仪";
                            if(woman.loves[d]>=80&&woman.loves[d]<100)  woman.level[d]="淑仪";
                            else
                                woman.level[d]="贵人"; 
                        }
                    }    
                }
            }    
        }
        else if(command==4)
        {
            cout<<endl<<"姓名"<<"         "<<"等级"<<"         "<<"好感度"<<"         "<<endl; 
            cout<<"———————————————————————————————"<<endl;
            for(int f=0;f<15;f++)
            {
                if(woman.identify[f]!=0)
                {
                    cout<<woman.name[f]<<"\t"<<woman.level[f]<<woman.loves[f]<<"\t"<<endl;
                }
                else
                    break;
            }
        }    
        for(int g=0;g<15;g++)
        {
            if(woman.identify[g]==1&&woman.loves[g]<=50)
            {
                num++;
            }
        }
        if(num>=3)
        {
            cout<<"妃子们反了,您驾崩了"<<endl;
            cout<<"您一共存活了"<<day<<"天."; 
            return 0;
        }
        else
        {
            day++;
        }
    }
    return 0;
}
  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 11月6日
    • 创建了问题 10月29日

    悬赏问题

    • ¥20 limma多组间分析最终p值只有一个
    • ¥15 nopCommerce开发问题
    • ¥15 torch.multiprocessing.spawn.ProcessExitedException: process 1 terminated with signal SIGKILL
    • ¥15 QuartusⅡ15.0编译项目后,output_files中的.jdi、.sld、.sof不更新怎么解决
    • ¥15 pycharm输出和导师的一样,但是标红
    • ¥15 想问问富文本拿到的html怎么转成docx的
    • ¥15 我看了您的文章,遇到了个问题。
    • ¥15 GitHubssh虚拟机连接不上
    • ¥15 装完kali之后下载Google输入法 重启电脑后出现以下状况 且退不出去 桌面消失 反复重启没用
    • ¥15 ESP-IDP-BLE配网连接wifi