C 如何通过键入字母来终止程序?

C 如何通过键入字母来终止程序?,c,if-statement,while-loop,calculator,terminate,C,If Statement,While Loop,Calculator,Terminate,我正在创建一个允许用户输入数字的程序。然后,它对输入的第一个数字连续进行加、减、除或乘运算,并在按下x时退出 我的代码: char o; float N1,N2,res; printf("Enter a Number Then Hit Enter> "); scanf("%f",&N1); res = N1; printf("\n****Value = %f****\n",res); while(1) { p

我正在创建一个允许用户输入数字的程序。然后,它对输入的第一个数字连续进行加、减、除或乘运算,并在按下
x
时退出

我的代码:

    char o;
    float N1,N2,res;
    printf("Enter a Number Then Hit Enter> ");
    scanf("%f",&N1);
    res = N1;
    printf("\n****Value = %f****\n",res);

    while(1) {
        printf("\nEnter an operation (+,-,*,/) or enter (x) to exit Then Hit Enter> ");
        scanf("%*c%c",&o);

        if(o=='x') {
            break;
        }

        printf("Enter a Number Then Hit Enter> ");
        scanf("%f",&N2);

        switch(o) {
        case '+':
            res=res+N2;
            printf("\n****Value = %f****\n",res);
            break;
        case '-':
            res=res-N2;
            printf("\n****Value = %f****\n",res);
            break;
        case '*':
            res=res*N2;
            printf("\n****Value = %f****\n",res);
            break;
        case '/':
            res=res/N2;
            printf("\n****Value = %f****\n",res);
            break;

        default:
            printf("Illegal Operation Symbol ....Try again > ");
        }
    }
    enter code here
    return 0;
}

我想知道如何退出该计划,以及是否有遗漏

如何通过键入字母来终止程序

嗯,你的原始程序应该正确终止。但是,如果您试图仅按一次键退出程序(此选项将帮助您保留Visual Studio中的输出窗口),您可以执行以下操作:

替换:

enter code here


我想知道如何退出该计划&如果有smth缺失,请详细说明您认为可能缺失的内容。如果
o==“x”
,我们怎么知道是否缺少什么?您提供的代码看起来好像退出了程序,至少它中断了循环,然后调用
返回0
。这行代码是不是应该在你的代码中?我希望程序在用户输入x之前退出?我怎么做?好的,是@JonnyHenly:D。更正并感谢你指出。我喜欢你代码中的逻辑。谢谢你解决了这个小问题。
while(getchar()!='\n')
   continue; //wasting the buffer
printf("You have pressed the x option\n");
printf("Press any key to exit..")
getchar();