Kxzh1 2023-02-14 22:13 采纳率: 40%
浏览 39
已结题

关于#c语言#的问题,请各位专家解答!

```

void main()

{

int x, a, z;
char y;
while (1)
{

    do {
        printf("输入:");
        scanf_s("%d%c%d", &x, &y, &z);
    } while (y != '+' && y != '-'&&y!='*'&&y!='/');
    switch (y)
    {
    case'+':a = x + z; break;
    case'-':a = x - z; break;
    case'*':a = x * z; break;
    case'/':a = x / z; break;
    }printf("%d%c%d= %d\n", x, y, z, a);
}

}```

  • 写回答

4条回答 默认 最新

  • qzjhjxj 2023-02-15 00:34
    关注

    改动如下,供参考:

    #include <stdio.h>
    void main()
    {
        int x, a, z;
        char y;
        while (1)
        {
            do {
                printf("输入:");
                scanf_s("%d %c %d", &x, &y, 1, &z);
                //scanf_s("%d%c%d", &x, &y, &z); 修改
            } while (y != '+' && y != '-'&&y!='*'&&y!='/');
            switch (y)
            {
                case'+':a = x + z; break;
                case'-':a = x - z; break;
                case'*':a = x * z; break;
                case'/':if (!z)     //修改
                            a = 0;
                        else
                            a = x / z;
                        break;
            }
            printf("%d%c%d= %d\n", x, y, z, a);
        }
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 2月24日
  • 已采纳回答 2月16日
  • 创建了问题 2月14日