请补充fun函数,该函数的功能是:判断一个年份是否为闰年。 例如,1900年不是闰年,2004是闰年。 [注意] 部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。

admin2010-11-26  39

问题 请补充fun函数,该函数的功能是:判断一个年份是否为闰年。
   例如,1900年不是闰年,2004是闰年。
   [注意] 部分源程序给出如下。
   请勿改动主函数main和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。
   [试题源程序]
   #include<stdio.h>
   #include<conio.h>
   int fun(int n)
   {
   int  fiag=0;
   if(n%4==0)
   {
   if(  (1)  )
   fiag=1;
   }
   if(  (2)  )flag=1;
   return  (3)  ;
   }
   void main()
   {
   int year;
   clrscr();
   printf("Input the year:");
   scanf("%d", &year);
   if(fun(year))
   printf("%d is a leap year.\n", year);
   else
   printf("%d is not a leap year.\n", year);
   }

选项

答案[1] n%100 !=0 [2] n%400==0 [3] flag

解析 题的关键是要知道闰年的定义,如果年份能被4整除但不能被100整除,或者能被400整除,这两种情况满足之一都是闰年。
   填空1:显然此处属于第一种情况,能被4整除但不能被100整除。所以这里应该填n%100!=0,只有满足这个条件,flag才能被赋值1。
   填空2:此处属于第二种情况,能被400整除,所以应该填n%400==0。
   填空3:从程序中可以知道,当满足以上两种情况之一时,flag就被赋值1,显然flag属于标志单元。再看主函数中对fun()函数的调用,显然需要返回的值不是真就是假,即函数fun()中标志单元flag的内容。
转载请注明原文地址:https://kaotiyun.com/show/FPID777K
0

最新回复(0)