c - 如果无效,如何拒绝用户输入并让他再次输入

标签 c

我正在创建一个程序,它要求输入然后根据输入拒绝或接受它。这是代码:

    while(1){
    printf("Enter name: ");
    scanf("%s", &name);

    if(name[0] == '\0'){
        printf("Input Cannot be empty\nExample: bobshmurda\n");
    } else {
        break;
    }
}
printf("Enter age: ");
scanf("%d", &age);

while(!age>= 15){
    printf("Age\n");
}

while(1){
    printf("Enter MMN: ");
    scanf("%d", &mmn);
    if (!cvv >= 3){
        printf("\nInvalid MMN... Try again\n");
    } else {
        break;
    }
}

while(1){
    printf("DOB: ");
    scanf("%d", &dob);
    if (!exp == 4){
        printf("Invalid DOB detected... Format: 0123\n");
    } else {
        break;
    }
}

我基本上想做的是,例如,如果年龄大于 100 或小于 0,则执行此操作,等等。与字符串相同,我将如何操作?

最佳答案

do-while 循环可能是最简单的方法:

int is_valid = 0;
do {
    // Get user input here
    is_valid = validate_input(...);
} while (! is_valid);

// Continue with processing...

关于c - 如果无效,如何拒绝用户输入并让他再次输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56081980/

相关文章:

计数并以二进制形式打印输入的整数

c - C 字母游戏提前结束

c - 指针未在 main 中更新

由于不相关的空 printf 语句,C 程序输出完全改变

c - 使数组能被3整除

c - 拼字游戏点计数器

C编程段错误

c - 使用不同的分隔符 C 代码将 token 拆分两次

c - 十进制的printf指针

c - 检测文件中的字符并在C中分割字节数组