c语言基础题代码错在哪了

问题遇到的现象和发生背景 箱子里有n个苹果,还混进了一条虫子。虫子每x小时能吃掉一个苹果,假设虫子在吃完一个苹果之前不会吃另一个,那么经过y小时你还有多少个完整的苹果?
问题相关代码,请勿粘贴截图

 #include <stdio.h>
int main()
{
    int n,x,y,a;
    scanf("%d,%d,%d",&n,&x,&y);
    if(y%x==0)
        a=n-y/x;
    else 
        a=n-y/x-1;
        printf("%d\n",a);
    return 0;
}
运行结果及报错内容 y/x没有被减去
我的解答思路和尝试过的方法
我想要达到的结果 解决方法
scanf("%d,%d,%d",&n,&x,&y);

改成

scanf("%d%d%d",&n,&x,&y);

scanf("%d,%d,%d",&n,&x,&y);中"%d,%d,%d"用逗号分隔,在输入数值时也要用逗号分隔,如 2,1,3
如果输入数值时用的是空格或换行分隔,如 2 1 3 就要改成 scanf("%d%d%d",&n,&x,&y);

#include <stdio.h>
int main()
{
    int n,x,y,a;
    scanf("%d%d%d",&n,&x,&y);
    if(y%x==0)
        a=n-y/x;
    else
        a=n-y/x-1;
        printf("%d\n",a);
    return 0;
}


img

如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

img

代码没有错误,但是输入数据的时候要用逗号分隔,如下:

10,2,4

要么就是scanf里有逗号,输入的时候也加逗号
要么就别加逗号,直接输数据,这样能避免错误


#include <stdio.h>
int main()
{
    int n, x, y, a;
    scanf("%d%d%d", &n, &x, &y);//去掉逗号就行
    if (y%x == 0)
        a = n - y / x;
    else
        a = n - y / x - 1;
    printf("%d\n", a);
    return 0;
}

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632