运行程序出来这个 - 爱问答

(爱问答)

运行程序出来这个

#include<stdio.h>

int main()

{

int m0,y0,d;

scanf("%d,%d",m0,y0);

if(m0==2)

{

if(y0%4==0)

{

if(y0%100==0)

{

if(y0%400==0)

{

d=29;

}

else

{

d=28;

}

}

else

{

d=29;

}

}

    }

    else if(m0==1||3||5||7||8||10||12)

    {

    d=31;

}

else if(m0==4||6||9||11)

{

d=30;

}

else if(m0>12)

{

printf("invalid mouth input");

}

else

{

printf("%d",d);

}

return 0;

}

运行出来这个Process exited after 6.712 seconds with return value 3221225477,求查错


你的程序,完全不符合C逻辑

1。scanf("%d,%d",m0,y0);

初学者都会犯的致命错,C的整形输入要用地址的,正确的

scanf("%d,%d",&m0,&y0);

2。if(m0==1||3||5||7||8||10||12)

这个是哪个老师或教材上教你可以这么写的,你细细去看下C的逻辑运算部分,这个表达式能表示什么?

可以告诉你的是,它与

if(m0==1)等价

具体你研究下

正确的只能是

if (m0==1 || m0==3 || m0==5 || m0==7 || m0==8 || m0==10 || m0==12)

3.你的整个if ...else语句,结构有问题,只有所有条件不成立才会有输出。你最后一个肯定不能是else的

先自己改下,有问题再补充


下一篇:javaca.java没错,但是javaa,报错,显示如下,求解

上一篇:以下Python语句中错误的是()。

热门标签:
excel 网盘 破解 word dll
最新更新:
微软重新评估新的Outlook的使用时机 联想推出搭载联发科Helio G80芯片组的Tab M9平板 英特尔创新大赛时间确定! 微软Edge浏览器在稳定渠道中推出Workspaces功能 英伟达RTX4060TiGPU推出MaxSun动漫主题! 谷歌地图为用户提供了街景服务! GameSir 在T4 Kaleid中推出了一款出色的控制器! 微软开始在Windows 11 中测试其画图应用程序的新深色模式! LG电子推出全球首款无线OLED电视 英伟达人工智能芯片崭露头角! Steam Deck可以玩什么游戏-Steam Deck价格限时优惠 雷蛇推出CobraPro鼠标 Kindle电子阅读器可以访问谷歌商店吗 Windows10如何加入组策略 window10图片查看器怎么没有了?