中易网

用C语言函数判断这一天是这一年的第几天?例如输入1998,1,1或者1998/1/1或者1998-1-1都可以

答案:4  悬赏:80  
解决时间 2021-03-05 14:29
帮下忙谢谢谢谢大家啦。。。。
更主要是那个输入。。。就是1998/1/1或者1998-1-1或者别的格式输入都可以
最佳答案
#include <stdio.h>
#include <stdlib.h>
static int daytable[2][13] = {
{0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31},
{0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}
};
void get_day ( int year, int *dayofyear, int month, int day )
{
int i, leap;
leap = (( year % 4 == 0 ) && ( year % 100 != 0 ) || ( year % 400 == 0 ));
*dayofyear = 0;
for (i=1;i< month;i++) {
*dayofyear = *dayofyear + daytable[leap][i];
}
*dayofyear = *dayofyear + day;
}

void main()
{
char s[12];
int y,m,d;
int jd;
int i,L;
printf("input 1998-1-1 year-month-day\n");
fscanf(stdin,"%s",s);
L = strlen(s);
for (i=0;i<L;i++) if (s[i] < '0' || s[i] > '9') s[i]=' ';
sscanf(s,"%d %d %d",&y,&m,&d);
printf("%d %d %d\n",y,m,d);
(void) get_day ( y, &jd, m, d );
printf("the J day=%d\n",jd);
}
-----------
1998/1/1 1998-1-1 1998,2,2 年符号月符号日符号都可以
全部回答
#include<stdio.h> main() {int Y,M,D,a[13]={366,31,29,31,30,31,30,31,31,30,31,30,31}, b[13]={365,31,28,31,30,31,30,31,31,30,31,30,31},E,i; K:scanf("%d %d %d",&Y,&M,&D); if((Y%4==0&&Y%100!=0)||(Y%4==0&&Y%400==0)) {E=0; for(i=1;i<M;i++) E=E+a[i]; printf("It is the year's first %d day.\n",E+D);} else {E=0; for(i=1;i<M;i++) E=E+b[i]; printf("It is the year's first %d day.\n",E+D);} goto K; getch();}
可以输入1998/1/1或者1998-1-1 1998.1.1 #include #include void main() { int month1[11]={31,28,31,30,31,30,31,31,30,31,30};//每月天数 int month2[11]={31,29,31,30,31,30,31,31,30,31,30};//闰年每月天数 int i,year,month,day,count=0; printf("年,月,日:"); scanf("%d%*c%d%*c%d",&year,&month,&day); if( (year%4==0&&year%100
可以输入1998/1/1或者1998-1-1 1998.1.1 #include<stdio.h> #include<windows.h> void main() { int month1[11]={31,28,31,30,31,30,31,31,30,31,30};//每月天数 int month2[11]={31,29,31,30,31,30,31,31,30,31,30};//闰年每月天数 int i,year,month,day,count=0; printf("年,月,日:"); scanf("%d%*c%d%*c%d",&year,&month,&day); if( (year%4==0&&year%100!=0)||(year%400==0) )//判断是否为闰年 for(i=0;i<month-1;i++) count+=month2[i]; else for(i=0;i<month-1;i++) count+=month1[i]; count+=day; printf("%d.%d.%d是这%d年第%d天\n",year,month,day,year,count); system("pause"); }
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
宗室家谱是多少个字为一轮回?
江淮骏铃保险杠是什么材料
我想创个qq拉人团队有什么名字
宸意装饰我想知道这个在什么地方
四斤重的龟有多少年了
鸿运五金日杂店怎么去啊,有知道地址的么
含有氧化铝粉废碳化硅有什么用.有人收购吗?什
从佳木斯市里到绥滨要多长时间?去哪坐车?车
海尔智能家居体验中心珠海路店在什么地方啊,
大窑湾海事局到金马路远吗,怎么走
做一个底面周长是16cm、高是5cm的长方体框架
初中作文 我喜欢的一项运动 跑步
仪陇县公安局立山派出所地址在什么地方,想过
绵羊皮容易破是质量问题吗
战神斯巴达幽灵的画面不清晰
推荐资讯
英国vk卫内裤真的吗?那里能买到真的
男人近日坐着小便比较困难,站着小便就好多了
昆山卓越亚马逊仓库
电石渣有腐蚀作用吗?
东山下办事处生活区地址在什么地方,我要处理
海口市移动初始密码是?
菲拉斯的羽月要塞怎么走?
哪里有黑车买
72伏40安的电瓶。能用72伏20安的充电器吗。
在安卓系统用itools平台的软件安全吗
孢子后太空攻略
锦东大道地址有知道的么?有点事想过去
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?