C语言,编写一函数使它能够判断:从键盘输入的年份是否为闰年,并把结果返回给调用它的函数并输出

急,马上要…谢谢

//此程序在VC6.0编译环境下通过。。。

#include "stdio.h"

int pd(int s)

{

if(!(s%400)||(!(s%4)&&s%100))

return(1);else return(0);

}

main()

{

int i,j;

link:printf("请输入你要判断的年份\n");

scanf("%d",&i);

j=pd(i);

if(j==0) printf("%d不是闰年\n",i);

else  printf("%d是闰年\n",i);

goto link;//实现循环输入判断。

}

结果。。如图。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-02-26

#include <stdio.h>

main()

{

 int year;

 scanf("%d",&year);

 if (s(year))printf("%d is a runnian.\n",year);

 else

 printf("%d isnot a runnian.\n",year);

 getch();

}

int s(int c)

{

 int leap;

if(c%400==0||(c%4==0&&c%100!=0))/*判断是不是闰年*/

  leap=1 ;

 else 

  leap=0;

 return leap;

}

程序在wintc下通过

希望对你有帮助

本回答被提问者和网友采纳
第2个回答  推荐于2016-04-22

闰年就是该年份数能被4整除且不能被100整除,或者能被400整除的。所以定义一个函数满足条件返回1,否则返回0。

参考代码:

#include "stdio.h"
int fun(int y){
if(y%400==0||(y%4==0&&y%400!=0))
return 1;
return 0;

int main()
{    
int y;
scanf("%d",&y);
if(fun(y))
printf("%d为闰年!",y);
else
printf("%d为平年!",y);
    return 0;
}
/*
运行结果:
2015
2015为平年!
*/

第3个回答  推荐于2018-06-24
int xxx()//是闰年反加真,不是返回0
{
int year;
while(scanf("%d",&year)!=1);//while用来保证正确读到数字
return year%4==0 && year%100 || year%400 == 0;
}
在函数中读数字是上面这样的,下面是函数接收一个参数的写法:
int yyy(int year)//是闰年反加真,不是返回0
{
return year%4==0 && year%100 || year%400 == 0;
}
我的写法一般人第一次看会不习惯!!!本回答被网友采纳
相似回答