| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2962 人关注过本帖
标题:输入三个数字,分别是 4 位的年份、月份、日期,判断是该年的第几天。用 ti ...
只看楼主 加入收藏
一笑丶
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2014-12-8
结帖率:0
收藏
已结贴  问题点数:20 回复次数:13 
输入三个数字,分别是 4 位的年份、月份、日期,判断是该年的第几天。用 time 来算,该怎么写
输入三个数字,分别是4位的年份、月份、日期,判断是该年的第几天。用time来算,该怎么写
2014-12-08 10:46
一笑丶
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2014-12-8
收藏
得分:0 
求各位解决
2014-12-08 11:29
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:4 
为啥用time来算   
啥叫time

DO IT YOURSELF !
2014-12-08 12:04
一笑丶
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2014-12-8
收藏
得分:0 
回复 3 楼 wp231957
不是可以用time函数算吗?
2014-12-08 12:19
一笑丶
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2014-12-8
收藏
得分:0 
回复 3 楼 wp231957
输入日期的time_t减该年第一天的time_t得到的数除以  24 * 3600就得到了天数
2014-12-08 13:43
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
以下是引用一笑丶在2014-12-8 13:43:47的发言:

输入日期的time_t减该年第一天的time_t得到的数除以  24 * 3600就得到了天数



还有这么玩的吗

DO IT YOURSELF !
2014-12-08 13:56
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
程序代码:
#include<stdio.h>

//获取公历年初至某整月的天数
int year_sumday(int year,int month)
{
    int sum=0;
    int rui[12]={31,29,31,30,31,30,31,31,30,31,30,31};
    int ping[12]={31,28,31,30,31,30,31,31,30,31,30,31};
    int ruiflag=0;
    if((year%4==0 &&year%100!=0) || year%400==0) ruiflag=1;
    for(int index=0;index<month-1;index++)
    {
        if(ruiflag==1) sum+=rui[index];else sum+=ping[index];
    }
    return sum;
}

int main()
{
    int y,m,d;
    printf("请输入年月日(请用空格隔开数据,例如2000 01 01):");
    scanf("%d%d%d",&y,&m,&d);
    int days=year_sumday(y,m)+d;
    printf("%d年1月1日 至 %d年%d月%d日  共有%d天.\n",y,y,m,d,days);
    return 0;
}


DO IT YOURSELF !
2014-12-08 14:04
一笑丶
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2014-12-8
收藏
得分:0 
回复 6 楼 wp231957
又,就是这么神奇
#include <stdio.h>
#include <time.h>
int main()
{
int year;
int month;
int day;
struct tm t;
time_t t1;
time_t t2;
printf("输入日期: 例如  2014 12 8\n");
scanf("%d%d%d", &year, &month, &day) ;
t.tm_year = year - 1900;
t.tm_mon = month - 1;
t.tm_mday = day;
t.tm_hour = 0;
t.tm_min = 0;
t.tm_sec = 0;
t1 = mktime( &t);
t.tm_mon = 0;
t.tm_mday = 1;
t2 = mktime( &t);
printf("%s is the %d th day of %d.", ctime(&t1), (t1-t2)/(24*3600)+1, year);
return 0;
}
2014-12-08 14:07
诸葛欧阳
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:流年
等 级:贵宾
威 望:82
帖 子:2790
专家分:14619
注 册:2014-10-16
收藏
得分:4 
time是计算机的时钟,它时刻在变化

一片落叶掉进了回忆的流年。
2014-12-08 16:30
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
...............

DO IT YOURSELF !
2014-12-08 16:47
快速回复:输入三个数字,分别是 4 位的年份、月份、日期,判断是该年的第几天。 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017916 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved