我正在尝试解决以下代码中循环上的错误,但我无法弄清楚为什么在第一个“ if”之后,最后一个“ else”之后都不会再次出错(“ Introduceti d sau n!”)。 ”),我写“ n”。 “ d”工作正常,返回“ else if”。在上一个修订的代码中,我已经更新了工作代码。至少在我在最后一个“ else”句子中按“ n”并返回到第一个菜单后,它才起作用。
switch(alegere_opt1)
{
case 1:
while(decizie != 'n')
{
alegereStudent(&stud);
printf("Doriti sa introduceti un nou student? (d/n):");
scanf(" %c",&decizie);
if (decizie == 'n')
{
meniuPrincipal();
alegereStudent(&stud);
printf("Doriti sa introduceti un nou student? (d/n):");
scanf(" %c",&decizie);
}
else if (decizie == 'd')
{
alegereStudent(&stud);
printf("Doriti sa introduceti un nou student? (d/n):");
scanf(" %c",&decizie);
}
else
{
printf("Introduceti d sau n! ");
scanf(" %c",&decizie);
}
}
break;
switch(alegere_opt1)
{
case 1:
{
alegereStudent(&stud);
printf("Doriti sa introduceti un nou student? (d/n): ");
scanf(" %c",&decizie);
if (decizie == 'n')
{
meniuPrincipal();
alegereStudent(&stud);
}
else if (decizie == 'd')
{
alegereStudent(&stud);
}
else
{
printf("Introduceti d sau n! ");
scanf(" %c",&decizie);
}
}
break;
switch(alegere_opt1)
{
case 1: while (decizie != 'z')
{
{
alegereStudent(&stud);
printf("Doriti sa introduceti un nou student? (d/n):");
scanf(" %c",&decizie);
if (decizie == 'd')
{
alegereStudent(&stud);
printf("Doriti sa introduceti un nou student? (d/n):");
scanf(" %c",&decizie);
}
else if (decizie == 'n')
{
meniuPrincipal();
}
else
{
printf("Introduceti d sau n! ");
scanf(" %c",&decizie);
if (decizie == 'n')
{
meniuPrincipal();
}
}
}
}
break;
答案 0 :(得分:2)
我不知道为什么它不会在第一个“ if”中再出现在最后一个中 “ else”(“ Introduceti d sau n!”),我写“ n”。 'd'工作正常 然后返回“ else if”。
由于您的GoogleApiAvailability does not exist in the context
循环条件(while
)。只要您输入while(decizie != 'n')
以外的任何内容,循环就会执行。当您输入n
作为输入时,它将不会出现在第一个if
中。