test 3: Fishing and drying the net

The fisherman started fishing for three days and drying his net for two days from January 1, 2000. Question: On any day in the future, will the fisherman be fishing or drying the net?

#include <stdio.h>

int leap(int a)//判断是否为闰年 
{
    
    
	if (a % 4 == 0 && a % 100 != 0 || a % 400 == 0)
		return 1;
	else 
		return 0;
}

int number(int year, int month, int day)
{
    
    
	int sum = 0, i, j, k;
	int a[12] = {
    
    31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
	int b[12] = {
    
    31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};//将闰年与非闰年的各月份一一列出(方便直接利用)
	 
	for (j = 2000; j < year; j ++)
		if (leap(year) == 1)
			sum += 366;//闰年366天 
		else 
			sum += 365;//非闰年365天	
	if (leap(year) == 1)
		for (i = 0; i < month - 1; i ++)
			sum += b[i];
	else
		for (i = 0; i < month - 1; i ++)
			sum += a[i];
	sum += day;
	return sum;	
}

int main()
{
    
    
	int year, month, day, n;
	scanf("%d%d%d", &year, &month, &day);
	n = number(year, month, day);
	if ((n % 5) < 4 && (n % 5) > 0)
		printf("fishing");
	else 
		printf("basking");
	return 0;	
} 

Guess you like

Origin blog.csdn.net/Shao_yihao/article/details/113177584