c语言的一个问题..大家帮帮我

来源:百度知道 编辑:UC知道 时间:2024/06/03 18:30:38
我写一个求今天是星期几的函数..
以下代码.. 输入是平年的话 没问题...但是 如果是闰年的话就不对了.
谁能帮助我改一下。..谢谢..

int xq(int a,int b,int c)
{
int e;
int count=0;
switch(b)
{
case 1:
count=c;
break;
case 2:
count=31+c;
break;
case 3:
count=31+29+c;
break;
case 4:
count=31+29+31+c;
break;
case 5:
count=31+29+31+30+c;
break;
case 6:
count=31+29+31+30+31+c;
break;
case 7:
count=31+29+31+30+31+30+c;
break;
case 8:
count=31+29+31+30+31+30+31+c;
break;
case 9:
count=31+29+31+30+31+30+31+31+c;
break;
case 10:
count=31+29+31+30+31+30+31+31+30+c;
break;
case 11:
count=31+29+31+30+31+30+31+31+30+31+c;
break;
case 12:
count=31+29+31+30+31+30+31+31+30+31+30+c;
break;
default:
printf("您的输入有误!\n&qu

int xq(int a,int b,int c)
{
int e;
int bb=28;
if(判断是否是闰年) bb=29;
int count=0;
switch(b)
{
case 1:
count=c;
break;
case 2:
count=31+c;
break;
case 3:
count=31+bb+c;
break;
case 4:
count=31+bb+31+c;
break;
case 5:
count=31+bb+31+30+c;
break;
case 6:
count=31+bb+31+30+31+c;
break;
case 7:
count=31+bb+31+30+31+30+c;
break;
case 8:
count=31+bb+31+30+31+30+31+c;
break;
case 9:
count=31+bb+31+30+31+30+31+31+c;
break;
case 10:
count=31+bb+31+30+31+30+31+31+30+c;
break;
case 11:
count=31+bb+31+30+31+30+31+31+30+31+c;
break;
case 12:
count=31+bb+31+30+31+30+31+31+30+31+30+c;
break;
default:
printf("您的输入有误!\n");
}

if(b>2)
{
count-=1;
}

e=(a-1+(a-1)/4-(a-1)/100+(a-1)/