想问一下这段代码哪里有问题

就是关于时间换算的一个代码
但是我运算出来一直是输入错误加运算结果
可以看看是哪里的问题嘛

int main()
{
int UTC, BJT;
int hour, minute;
scanf("%d", &BJT);
if("BJT<0||BJT>2359")
{
printf ("输出错误");
}
hour = BJT / 100;
minute = BJT % 100;
if(hour>=8)
{
hour = (hour - 8) * 100;
printf("%d", hour+minute);
}
else if(hour<8)
{
hour = (24 - 8 + hour) * 100;
printf("%d", hour+minute);
}

return 0;

}

楼主的if语句有问题。
改成:if(BJT<0||BJT>2359)

完整代码:

#include<stdio.h>
int main()
{
    int UTC, BJT;
    int hour, minute;
    scanf("%d", &BJT);
    if(BJT<0||BJT>2359)
    {
        printf ("输出错误");
    }
    hour = BJT / 100;
    minute = BJT % 100;
    if(hour>=8)
    {
        hour = (hour - 8) * 100;
        printf("%d", hour+minute);
    }
    else if(hour<8)
    {
        hour = (24 - 8 + hour) * 100;
        printf("%d", hour +minute);
    }
    return 0;
}

img

if("BJT<0||BJT>2359")
不应该有引号啊,把引号删掉
if(BJT<0||BJT>2359)
=====================
hour = (hour - 8) * 100;
小时转换为分钟,应该乘以60,不是100。时间是60进制

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