1230 - C语言9.4

通过次数

0

提交次数

0

时间限制 : 1 秒 内存限制 : 32 MB

定义一个宏,对于输入的一个年份,判断其是否是闰年。

要求使宏名为LEAP_YEAR,形参为y,即定义宏的形式为:

define LEAP_YEAR(y) ......

题目输入

一个正整数year。

题目输出

如果输入的年份year是闰年,则首先输出year的值,然后输出” is a leap year.”;否则若输入的年份不是闰年,则同样首先输出year的值,然后输出” is not a leap year.”。

请注意行尾输出换行。

输入/输出样例

输入格式

2013

输出格式

2013 is not a leap year.

C语言解答

#include<stdio.h>
#define LEAP_YEAR(y)(y)%400==0||(y)%4==0&&(y)%100!=0
int main()
{   
	int year;
	scanf("%d",&year);
	if(year>=1000 && year<=9999)
	{      
		if(LEAP_YEAR(year))	  
		{        
			printf("%d is a leap year.\n", year);
		}      
		else	  
			{      
				printf("%d is not a leap year.\n", year);	  
			}   
	} 
}

C++解答

#include <stdio.h>
#define LEAP_YEAR(y) ((y % 4 == 0 && y % 100 != 0) || (y % 400 == 0))
int main() {
	int year;
	scanf("%d", &year);
	if (LEAP_YEAR(year))
		printf("%d is a leap year.\n", year);
	else
		printf("%d is not a leap year.\n", year);
	return 0;
}

Java解答

import java.util.*;

public class Main{
	public static void main (String[] args) {
		Scanner in=new Scanner(System.in);
		int y=in.nextInt();
		if(y%4==0&&y%100!=0 || y%400==0)
			System.out.println (y+" is a leap year.");
		else
			System.out.println (y+" is not a leap year.");
	}
}