swtch使用过程中出现的格式错误怎么解决?

输入格式:

只有一行,依次为整数a、操作符op、和整数b,a、op、b中间有一个空格分隔。其中-10000<a,b<10000,操作符op为“+”、“-”、“*”、“/”、和“%”之一。。

输出格式:

只有一行,为a、b两个数通过op的计算结果。比如,输入为“1 + 2”,则计算1和2的和并输出“1 + 2 = 3”。 注意:当操作符op为“/”或“%”,且b为0时,算式无效,此时,程序输出一个单词:Invalid。

#include<stdio.h>
int main()
{
    int a,b,c;
    char op;
    scanf("%d %c %d",&a,&op,&b);
    switch(op)
    {
        case '+':
            printf("%d + %d = %d",a,b,a+b);
            break;
        case '-':
            printf("%d - %d= %d",a,b,a-b);
            break;
        case'*':
            printf("%d * %d= %d",a,b,a*b);
            break;
        case '/':
            if(0==b)
            printf("Invalid");
            else
            printf("%d / %d= %d",a,b,a/b);
            break;
        case '%':
            if(0==b)
            printf("Invalid");
            else
            printf("%d %% %d= %d",a,b,a%b);
            break;
    }
    return 0;
}
 

这个是我写的代码,提交显示格式错误,请问大佬们错在哪里呀

你的变量c声明了,但没有使用。

代码我重新格式化了一下,看看行不行

#include <stdio.h>

int main() {
    int a, b;
    char op;
    scanf("%d %c %d", &a, &op, &b);
    switch (op) {
        case '+':
            printf("%d + %d = %d", a, b, a + b);
            break;
        case '-':
            printf("%d - %d = %d", a, b, a - b);
            break;
        case '*':
            printf("%d * %d = %d", a, b, a * b);
            break;
        case '/':
            if (0 == b)
                printf("Invalid");
            else
                printf("%d / %d = %d", a, b, a / b);
            break;
        case '%':
            if (0 == b)
                printf("Invalid");
            else
                printf("%d %% %d = %d", a, b, a % b);
            break;
    }
    return 0;
}

 

您好,我是问答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632

谢谢!