小编buz*_*rNL的帖子

C(和循环)中的输入验证

我正在创建一个程序,它应该验证我对正确值的输入,但不幸的是我做错了.如果答案是1或0,该程序需要检查输入值10次.否则它必须再次请求答案.当输入完成时,应该通过printf显示正确的答案,但事实并非如此.

我的猜测是"开关案例"部分出了问题.帮助将不胜感激!

我的代码:

int main()

{
char a0, a1, a2, a3, a4, a5, a6, a7, a8, a9;
char c = '0';
int a = 0, OK = 0, check = 0, valid_input = 0, a_ok;

printf("Fill in a value 1 or 0.\n\n");

while (a < 10)
{
while (valid_input == 0)
{
    printf("Fill in a%d: ", a);
    a_ok = scanf("%d", &OK);
    if (a_ok != 1)
    {
        scanf("%s", &c);
    }
    else if (OK <0 | OK >1)
    {
        do
        {
            while …
Run Code Online (Sandbox Code Playgroud)

c validation input

2
推荐指数
1
解决办法
266
查看次数

标签 统计

c ×1

input ×1

validation ×1