使用主体中的输入,以便用户可以编辑

时间:2016-06-30 04:07:07

标签: c input enums main

#include <stdio.h>
#include <string.h>

enum Race {wood_elf, human, high_elf, khajiit, orc, dwarf};

enum Class {archer, assassin, healer, knight, mage, paladin};

typedef struct Character
{
    char name[20];
    enum Class class_;
    enum Race race_;
    int perception;
    int stealth;
    int strength;
    int charisma;
    int agility;
    int intelligence;   
    int health;
    int magika;
    int stamina; 
} Character;

int main(int argc, char* argv[])
{

    int mc = 1;

    while(mc != 2) {
        printf("Welcome to Ceatures and Computers, please enter a number to select an option: \n\n");
        printf("1.) Create Character \n");
        printf("2.) Quit \n");

        scanf("%i", &mc);

        if(mc == 1)
        {
        }

        if(mc == 2)
        {
            printf("Thank you for playing. \n");
        }

        if(mc > 2)
            printf("Please enter number 1 or 2 to select a menu option. \n");
    }
    return 0;   
}

我目前正在尝试制作一款基于文字的游戏,并且正在上大学。我很快就要离开了,以为我会尝试这个网站,看看当我无法问老师时它会有多大用处。我正在处理的当前部分是让用户输入他们的角色名称,职业,种族,以及具有最大金额和总金额的技能,就像Fallout一样。希望这很好,我可以回到这个网站寻求帮助,并有更多的知识来帮助他人。

1 个答案:

答案 0 :(得分:0)

欢迎。
一些建议

如果用户输入“&#39; one”等文字,会发生什么? 始终检查错误

if (scanf("%i", &mc) != 1){
    printf("incorrect input.\n");
    return 1;
}

还检查用户输入的值是否正确。如果不采取适当的行动。

使用它:

typedef struct{
    //...
} Character;

而不是(在你的情况下,这是多余的命名):

typedef struct Character{
        //...
} Character;

我希望这会有所帮助。