用C创建一个简单的计算器

1 c

我正在尝试编写一个简单的C计算器脚本,只使用基本的+, - ,/,*.我有以下内容,但我不确定为什么它打印不正确.

#include<stdio.h>
#include<stdlib.h>

int main (void)
{

    //introduce vars
    double number1, number2, result;
    char symbol; //the operator *, -, +, /

    //allow user interaction
    printf("Enter your formula \n");
    scanf("%f %c %f", &number1, &symbol, &number2);

    switch (symbol) {
        case '+':
            result = number1 + number2;
            break;
        default:
            printf("something else happened i am not aware of");
            break;
    }

    getchar();
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

为什么结果不打印?我在这里做错了吗

result = number1 + number2;
Run Code Online (Sandbox Code Playgroud)

Tho*_*ens 17

你永远不会打印结果......

你需要添加这样的东西:

printf("Result: %f", result);
Run Code Online (Sandbox Code Playgroud)


abe*_*nky 6

"为什么结果不打印?"

您可以正确计算答案,但不要在任何地方打印.

你需要有类似的东西:

printf("Answer: %f + %f = %f\n", number1, number2, result);
Run Code Online (Sandbox Code Playgroud)

如果没有打印声明,则不会打印任何内容


编辑回复评论:

计算结果你做了printf 吗?就个人而言,我会把printf放在getchar()之前;

为了更多的调试,就在你的scanf之后,我会写:

printf("Input as received: number1 is %f\n number2 is %f\nsymbol is %c\n", number1, number2, symbol);
Run Code Online (Sandbox Code Playgroud)

如果没有显示您输入的输入,那么收集输入的方式就出错了.