万年历(C语言编程)
发布网友
发布时间:2022-04-24 17:05
我来回答
共2个回答
热心网友
时间:2023-10-24 16:24
#include<stdio.h>
#include<time.h>
int leap (int year)//判断闰年
{
if(year%4==0&&year%100!=0||year%400==0)
return 1;
else return 0;
}
int days_month (int month,int year)//判断月
{
if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)
return 31;
if(month==4||month==6||month==9||month==11)
return 30;
if(month==2&&leap(year)==1) return 29;
else return 28;
}
int firstday(int month,int year)//判断年
{
int w;
w=(1+2*month+3*(month+1)/5+year+year/4+year/400-year/100)%7+1;
return w;
}
main()
{
//调用系统时间
time_t tval;
struct tm *now;
tval = time(NULL);
now = localtime(&tval);
printf("现在时间: %4d年 %d月 %02d日 %d:%02d:%02d\n", now->tm_year+1900, now->tm_mon+1, now->tm_mday,
now->tm_hour, now->tm_min, now->tm_sec);
//调用结束
int i,j=1,k=1,a,b,month,year;
b=days_month(now->tm_mon+1,now->tm_year+1900);
a=firstday (now->tm_mon+1,now->tm_year+1900);
printf(" Sun Mon Tue Wed Thu Fri Sat \n");
if(a==7)
{
for(i=1;i<=b;i++)
{
printf("%4d",i);
if(i%7==0)
{
printf("\n");
}
}
}
if(a!=7)
{
while (j<=4*a)
{
printf(" ");
j++;
}
for(i=1;i<=b;i++)
{
printf("%4d",i);
if(i==7*k-a)
{
printf("\n");
k++;
}
}
}
printf("\n");
}
热心网友
时间:2023-10-24 16:24
#include<stdio.h>
#include<time.h>
int
leap
(int
year)//判断闰年
{
if(year%4==0&&year%100!=0||year%400==0)
return
1;
else
return
0;
}
int
days_month
(int
month,int
year)//判断月
{
if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)
return
31;
if(month==4||month==6||month==9||month==11)
return
30;
if(month==2&&leap(year)==1)
return
29;
else
return
28;
}
int
firstday(int
month,int
year)//判断年
{
int
w;
w=(1+2*month+3*(month+1)/5+year+year/4+year/400-year/100)%7+1;
return
w;
}
main()
{
//调用系统时间
time_t
tval;
struct
tm
*now;
tval
=
time(NULL);
now
=
localtime(&tval);
printf("现在时间:
%4d年
%d月
%02d日
%d:%02d:%02d\n",
now->tm_year+1900,
now->tm_mon+1,
now->tm_mday,
now->tm_hour,
now->tm_min,
now->tm_sec);
//调用结束
int
i,j=1,k=1,a,b,month,year;
b=days_month(now->tm_mon+1,now->tm_year+1900);
a=firstday
(now->tm_mon+1,now->tm_year+1900);
printf("
Sun
Mon
Tue
Wed
Thu
Fri
Sat
\n");
if(a==7)
{
for(i=1;i<=b;i++)
{
printf("%4d",i);
if(i%7==0)
{
printf("\n");
}
}
}
if(a!=7)
{
while
(j<=4*a)
{
printf("
");
j++;
}
for(i=1;i<=b;i++)
{
printf("%4d",i);
if(i==7*k-a)
{
printf("\n");
k++;
}
}
}
printf("\n");
}
c语言万年历程序。编写程序打印任意给定的年份的日历或者某年某月的月 ...
以下是一个示例的 C 代码,实现了打印给定年份的日历、某年某月的月历以及查询某一天是星期几的功能:include <stdio.h>// 判断某年是否为闰年int isLeapYear(int year) { if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) { return 1;} return 0;}// 获取某年某...
c语言编程“万年历”:输入年份后输入这一年元旦是周几然后出现这一年的...
int c=0;float s;int m;for(m=1;m<month;m++)c=c+month_day(year,m);c=c+day;s=year-1+(float)(year-1)/4+(float)(year-1)/100+(float)(year-1)/400-40+c;return ((int)s%7);} int PrintAllYear(int year){ int temp;int i,j;printf("\n\n%d year\n",year);f...
用C语言编写一个程序:输入任意一个年份,输出该年的日历,要求日历自上...
//万年历.include <stdio.h> long int f(int year,int month){ if(month<3) return year-1;else return year;} long int g(int month){ if(month<3) return month+13;else return month+1;} long int n(int year,int month,int day){ return 1461L*f(year,month)/4+153L*g(mon...
C语言编写万年历~~速度
C语言编程万年历,要求输入年月,判断是否闰年;输入年月日,判断星期几;输入年份,打出12个月的月历;输入月份,打印出本月日历;要求用多个函数实现。 恩 就这 2天尽快,谢谢。匿名 | 浏览226 次 |举报 我有更好的答案推荐于2017-12-15 14:11:19 最佳答案 /*C语言编程万年历要求输入年月,判断是否闰年;输入年...
C语言程序设计 万年历查询程序。
【内容】:设计一个查询并打印万年历的程序。【步骤】:1. 画出程序流程图;2. 编写程序;3. 调试程序,对调试过程中出现的问题进行分析,找出错误的原因并予改正;4. 写出通过调试并修改正确的原程序。【要求】:1. 程序运行后,首先在屏幕上显示主菜单:1. 查询某年某月某日是星期几 2. ...
C语言万年历代码
char YN; //Yes No,程序是否要继续 int Days[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};//Days[1~12]存储每个月有多少天,其中二月的天数是可变的(闰年29天,平年28天),这里初始化为28天 printf(" C语言简单万年历\n"); //打印标题 XunHuan: //循环标号(可以通过go...
万年历查询程序. C语言代码
include<stdio.h>#include<string.h>#include<malloc.h>#include<stdlib.h>#define PLACE_OF_LA D:\\data1.txt#define PLACE_OF_LB D:\\data2.txt#define LEN_OF_LA 6#define LEN_OF_LB 3#define LEN_OF_LC LEN_OF_LA+LEN_OF_LBtypedef struct elem{int id;char name[12];}ElemType...
c语言万年历代码输入年份输出整年日历,输出年份和月份输出某年某月...
include <stdio.h> define YEAR 365 int leap(int year){ int n;n=(year%4==0&&year%4!=0||year%400==0);return(n);} void count(int year, int month) /*基:2000年1月*/ { int i,day,first_day,flag,year1,year2,temp=6;flag=leap(year);year1=year/100; /*相差几百年...
在c语言中使用函数来制作一个万年历,要求,可以知道每个月有多少天,每...
= localtime(&ltime);//printf("%d-%02d-%02d %02d:%02d:%02d\n星期%d 当年第%d天\n", //today->tm_year + 1900, today->tm_mon + 1, today->tm_mday, //today->tm_hour, today->tm_min, today->tm_sec, today->tm_wday, today->tm_yday);int iYear = today->tm_...
c语言编写万年历时计算每月第一天是星期几的公式是什么
C语言根据日期判断星期几,使用基姆拉尔森计算公式:W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7 在公式中d表示日期中的日数,m表示月份数,y表示年数。注意:把一月和二月看成是上一年的十三月和十四月,例:如果是2004-1-10则换算成:2003-13-10来代入公式计算。以公元元年为...