程序正在跳过第二个开关

时间:2017-10-20 16:44:46

标签: c

程序正在跳过a,b,c或d的第二选择。它在“写回答(a / b / c / d):”之后停止。在那一刻,程序停止并且不让用户从之前提到的选项中进行选择。我如何通过一些初学者修复解决这个问题? (我的编程只有2个星期)谢谢。

这是源代码:

#include <stdio.h>

#include <stdlib.h>

 int main()

 {
   char choice;
   char choice1;

printf("Welcome.\n");
printf("-------------------\n");

printf("Who created Microsoft?\n");
printf("a) Steve Jobs\n");
printf("b) Tim Cook\n");
printf("c) Bill Gates\n");
printf("d) Mark Zuckerberg\n");

printf("\nWrite answer (a/b/c/d): ");
scanf("%c",&choice);

switch(choice)
{
    case 'a': printf("\nIncorrect.\n");
        break;

    case 'b': printf("Incorrect.\n");
        break;

    case 'c': printf("Correct.\n");
        break;

    case 'd': printf("Incorrect.\n");
        break;

}

printf("Who owns MySQL?\n");
printf("a) Microsoft\n");
printf("b) Apple\n");
printf("c) Google\n");
printf("d) Oracle\n");

printf("\nWrite answer: (a/b/c/d): ");
scanf("%c",&choice1);

switch(choice1)
{
    case 'a': printf("Incorrect.\n");
        break;

    case 'b': printf("Incorrect.\n");
        break;

    case 'c': printf("Incorrect.\n");
        break;

    case 'd': printf("Correct.\n");
        break;
}

    return(EXIT_SUCCESS);

}

能够做到这一点的人也可以解释他为什么选择这样的解决方案吗?提前谢谢。

0 个答案:

没有答案