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

请问大神 我的这个有什么问题啊

#include <stdio.h>

int main() 

    /* 定义需要计算的日期 */

    int year = 2008;

    int month = 8;

    int day = 8;

    /*

     * 请使用switch语句,if...else语句完成本题

     * 如有想看小编思路的,可以点击左侧任务中的“不会了怎么办”

     * 小编还是希望大家独立完成哦~

     */

    int sum,flag;

    switch(month)

    {   case 1:printf("sum=0");break;

        case 2:printf("sum=31");break;

        case 3:printf("sum=59");break;

        case 4:printf("sum=90");break;

        case 5:printf("sum=120");break;

        case 6:printf("sum=151");break;

        case 7:printf("sum=181");break;

        case 8:printf("sum=212");break;

        case 9:printf("sum=243");break;

        case 10:printf("sum=273");break;

        case 11:printf("sum=304");break;

        case 12:printf("sum=334");break;

        default:printf("一年就12个月");break;

    }

    sum+=day;

    if(year%400==0||(year%4==0 && year%100!=0))

        flag==1;

    else

        flag==0;

    if(flag==1&&month>2)

    sum=sum+1;

    printf("%d年%d月%d日是该年的第%d日",year,month,day,sum);

return 0;

}


正在回答

2 回答

case 1:printf("sum=0");break;

正确的是case 1:sum=0;break;

printf是输出语句

还有

     flag==1;

    else

        flag==0;

    if(flag==1&&month>2)

这里改成 flag=1; flag=0;全改了

 printf("%d年%d月%d日是该年的第%d日",year,month,day,sum);

这里面有个中文状态下的逗号 

要细心,你这抄都没抄对


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

#include <stdio.h>

int main() 

{

    int m,d,y,sum;

    y=2008;

    m=8;

    d=8;

    sum=0;

    if(y%4==0)

    {

    switch(m-1)

    {

    case 12 :sum+=31;

    case 11 :sum+=30;

    case 10 :sum+=31;

    case 9 :sum+=30;

    case 8 :sum+=31;

    case 7 :sum+=31;

    case 6 :sum+=30;

    case 5 :sum+=31;

    case 4 :sum+=30;

    case 3 :sum+=31;

    case 2 :sum+=29;

    case 1 :sum+=31;

    break;

}

sum+=d;

printf("%d",sum);

}

else

{

switch(m-1)

    {

    case 12 :sum+=31;

    case 11 :sum+=30;

    case 10 :sum+=31;

    case 9 :sum+=30;

    case 8 :sum+=31;

    case 7 :sum+=31;

    case 6 :sum+=30;

    case 5 :sum+=31;

    case 4 :sum+=30;

    case 3 :sum+=31;

    case 2 :sum+=28;

    case 1 :sum+=31;

    break;

}

sum+=d;

printf("%d",sum);

}

    return 0;

}


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

举报

0/150
提交
取消

请问大神 我的这个有什么问题啊

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信