A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

夏夏天阳

初级黑马

  • 黑马币:20

  • 帖子:10

  • 精华:0

小明从2006年1月1日开始,每三天结识一个美女两天结识一个帅哥,编程实现当输入2006年1月1日之后的任意一天,输出小明那天是结识美女还是帅哥(注意润年问题)(C语言)
解答:
#include <stdio.h>
int leapYear(int year)
{
        int flag;
        if(year % 4) flag=1;
        else         flag=0;
        return flag;       
}

int maxDay(int year,int month)
{
        int maxday;
        if(month == 2)
        {
                if(leapYear(year)) maxday = 29;
                else maxday = 28;
        }
        else if(month == 1 || month == 3  || month == 5 || month == 7 ||
                        month == 8 || month == 10 || month == 12)
        {
                maxday = 31;
        }
        else
        {
                maxday = 30;
        }
        return maxday;               
}

int main()
{
        int year,month,day,i;
        int days = 0;
        while(1)
        {
                printf("请输入日期:");
                scanf("%d-%d-%d",&year,&month,&day);
                for(i=0;i<year-2006;i++)
                {
                        days += leapYear(year)?366:365;
                }
                for(i=1;i<month;i++)
                {
                        days+=maxDay(year,month);
                }
                days+=day;
                printf("今天是第%d天\n",days);
       
            if (days %2 ==0)
            {
                printf("小明今天遇到的帅哥\n");
            }
            
            if (days %3 ==0)
            {
                printf("小明今天遇到的是美女\n");
            }
            
            if (days %2 !=0 && days %3 !=0)
            {
                printf("小明今天很孤独\n");
            }
            days = 0;
    }
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马