为了账号安全,请及时绑定邮箱和手机立即绑定

正在回答

2 回答

你好,我看了下你写的代码。主要问题有两个:1、case写成cage个;2、case里面给sum赋值应该用"=",而不是”==“。还有个小问题是你判断闰年的条件不是很对,具体可以百度下。下面是我改过的代码:

#include <stdio.h>

//
// Created by HaoBo on 2016/3/25.
//
#include <stdio.h>
int main()
{
   /* 定义需要计算的日期 */
   int year = 2008;
   int month = 8;
   int day = 8;
   /*
    * 请使用switch语句,if...else语句完成本题
    * 如有想看小编思路的,可以点击左侧任务中的“不会了怎么办”
    * 小编还是希望大家独立完成哦~
    */
   int sum,flag;
   if(year%4==0)
   {
       if(year%100!=0){
           flag=1;
       }
   }
   else
   {
       flag=0;
   }
   switch(month)
   {
       case 1: sum=0;
           break;
       case 2: sum=31;
           break;
       case 3: sum=59;
           break;
       case 4:sum=90;
           break;
       case 5:sum=120;break;
       case 6:sum=151;break;
       case 7:sum=181;break;
       case 8:sum=212;break;
       case 9:sum=243;break;
       case 10:sum=273;break;
       case 11:sum=304;break;
       case 12:sum=334;break;
       default:printf("一年只有十二个月哦~");break;
   }
   sum=sum+flag+day;
   printf("%d年%d月%d日是该年的第%d天",year,month,day,sum);
   return 0;
}

0 回复 有任何疑惑可以回复我~
#1

舞颜 提问者

非常感谢!
2016-06-20 回复 有任何疑惑可以回复我~

想问下,为什么要把12个月都算进去?还有SUM不是334吗,为什么输出确是221?

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926226    人
  • 解答问题       20797    个

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

进入课程
意见反馈 帮助中心 APP下载
官方微信