写一个关于结构体的 C语言程序

编写一程序,定义结构体类型struct date,它的成员有year、month、day、weekday。其中weekday为枚举类型,通过键盘任意输入某日期,计算它的星期(1980年1月1日为Tuesday),输出它的年月日及星期的英文名称。

只能用结构体前的内容 不能用指针和之后的内容 还没学 我是新手尽量写简单点的谢谢了。。

以前写过的程序,你自己改下用吧
#include "stdio.h"

int get_week(int y,int m,int d)
{
int a; /* 用来保存计算得到的星期几的整数*/
if((m==1)||(m==2))/*如果是一月或二月进行换算*/
{
m+=12;
y--;
}
a=(d+2*m+3*(m+1)/5+y+y/4-y/100+y/400)%7; /*基姆拉尔森计算公式,得到的星期几的整数*/
return a;
}

void PrintWeek(int weekday)
{
switch(weekday)
{
case 6 : printf("%4s","Sun"); break;
case 0 : printf("%4s","Mon"); break;
case 1 : printf("%4s","Tue"); break;
case 2 : printf("%4s","Wed"); break;
case 3 : printf("%4s","Thu"); break;
case 4 : printf("%4s","Fri"); break;
case 5 : printf("%4s","Sat"); break;
}
}
main()
{
int year,month,day;
printf("Input the date:(yyyy-mm-dd)");
scanf("%d-%d-%d",&year,&month,&day);
if((year<1)||(month<1||month>12)||(day<1||day>31))
{
printf("Invalid date format.\n");
/*break;*/
}
printf("The week is");
PrintWeek(get_week(year,month,day));
printf("\n");
getch();
}
温馨提示:答案为网友推荐,仅供参考
相似回答