检查了好久,这个到底哪里错了呢

来源:4-17 switch与if语句的应用

慕粉1937114962

2016-09-26 14:59

哪里我没看到嘛?

写回答 关注

3回答

  • JustWannaHugU
    2016-09-26 15:11:21
    已采纳

    明白了吗?

    看你程序,虽然是2008年8月8号,但case 8的时候直接略过了case 1-7的语句,从case 8开始执行,由于没有break,所以程序 继续向下执行,因此你的sum的结果是case8-case12的月份总和而不是case2-case8的的累加值

    以上,望采纳

    fl1995 回复慕粉1937...

    兄弟,你在笔记中把case倒过来写错了。举个例子,8月8号,你的方法把2-8个月的都加了,然后加了个8,因为8月和1月同为31天,所以这个结果刚好等于221天,但是假设你计算7月7号的天数,就会比正确方法少一天,,所以,兄弟你能不能把你6天前的笔记修改一下

    2016-10-04 10:43:00

    共 3 条回复 >

  • 慕仔5213964
    2016-09-26 15:14:35

    中间case ,加break;

  • JustWannaHugU
    2016-09-26 15:06:46

    你代码逻辑很正确,但你忽略了重要的一个知识点

    switch结构中的case只有在遇到break的时候才会停止,你如果不加break的话,它就会把这个case后面的case语句也进行执行。有时候有需要的话,可以不加break

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926027 学习 · 20793 问题

查看课程

相似问题