c语言:从键盘上输入数字形式的年月日,输出英文形式的年月日,并指出这天是星期几.

初学者的问题
#include<stdio.h>
int main()
{
int y,m,d;
int M,X,W,C,Y;
scanf("%d%d%d",&y,&m,&d);
M=(m-3)%12+1;
Y=y-M/11;
C=Y/100;
X=Y%100;
W=(X+X/4+C/4-2*C+2*M+(M+M/7)/2+M/12+d)%7;
if(W<0)
W+=7;
printf("%d\n",W);
}

这是数字的,不是英文形式的年月日和星期几

void main()
{
 int y,m,d,a;
scanf("%d%d%d",&y,&m,&d);
if(m==1||m==2)
 {
 m+=12;
 y--;
 }
 a=(d+2*m+3*(m+1)/5+y+y/4-y/100+y/400)%7+1;//这是一个公式,百度下就知道了。
  printf("输入的这一天是星期%d\n",a);
}

追问

那么怎么转化为英文形式的年月日呢?

追答

printf("%d,%d,%  ",y,m,d);

switch(w)

{

case 1: printf("Today is Monday");break;
case 2: printf("Today is Tuesday");break;
case 3: printf("Today is Wednesday");break;
case 4: printf("Today is Thursday");break;
case 5: printf("Today is Friday");break;
case 6: printf("Today is Saturday");break;
case 7: printf("Today is Sunday");break;

}

 

直接加入主函数即可

温馨提示:答案为网友推荐,仅供参考
相似回答