24小时热门版块排行榜    

Znn3bq.jpeg
查看: 1079  |  回复: 3
本帖产生 2 个 程序强帖 ,点击这里进行查看

微尘、梦想

木虫 (知名作家)

[交流] 再来一道,求某日是某年的第几天 已有2人参与

RT
要求:
要能判断输入日期是否正确,比如说输入2011 5 32号,要给出错误信息
要注意闰年与非闰年的区别

延伸:如果输入出生年月日,及现在的日期,求出你已经来到这世上多少天了……

说明:这算两道题,可以任选一个,也可以把这两道题写在一个程序里面!
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

任风云变幻,我笑对人生!
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gghgbsl8768

铜虫 (小有名气)


小木虫(金币+0.5):给个红包,谢谢回帖
#include"stdio.h"
#include"time.h"
#include"windows.h"

struct ti
{
        int year;
        int month;
        int day;
        int hour;
        int min;
        int second;
};
void judgment(struct ti m)
{
if(m.month>12||m.month<0)
{
         printf("您输入的月份有误,请重新输入";
        // system("cls";
         setBeginDateTime();
         setEndDate();
}
else if(m.day<0||m.day>31)
{
         printf("您输入的日期有误,请重新输入";
         //system("cls";
          setBeginDateTime();
          setEndDate();
}
else if(m.hour<0||m.hour>24)
         {
         printf("您输入的小时有误,请重新输入";
         //system("cls";
          setBeginDateTime();
          setEndDate();
}
else if(m.min<0||m.min>60||m.second>60||m.second<0)
         {
          printf("您输入的分或秒有误,请重新输入";
          //system("cls";
          setBeginDateTime();
          setEndDate();
}
}

int yearday(int year,int monty,int day)
{
        int a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
        int flag,sum=0;
        printf("请输入年月日:";
        scanf("%d,%d,%d",&year,&mon,&day);
        flag=(year%400==0)||(year%4==0&&year%100!=0);
                if(flag==1)
                {
                        a[2]++;
                 }
                       
               
        switch(mon)
                {
                case 1:
                        sum=sum+a[0]+day;
                        break;
                case 2:
                        sum=sum+a[1]+day;
                        break;
                case 3:
                        sum=sum+a[2]+day;
                        break;
                case 4:
                        sum=sum+a[3]+day;
                        break;
                case 5:
                        sum=sum+a[4]+day;
                        break;
                case 6:
                        sum=sum+a[5]+day;
                        break;
                case 7:
                        sum=sum+a[6]+day;
                        break;
                case 8:
                        sum=sum+a[7]+day;
                        break;
                case 9:
                        sum=sum+a[8]+day;
                        break;
                case 10:
                        sum=sum+a[9]+day;
                        break;
                case 11:
                        sum=sum+a[10]+day;
                        break;
                case 12:
                        sum=sum+a[11]+day;
                        break;
                       
                }
                    return sum;
                                               
        }
void main()
{
   int y,m,d;
  scanf("%d,%d,%d",&y,&m,&d);
yearday(y,m,d);

}
2楼2011-05-10 23:06:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gghgbsl8768

铜虫 (小有名气)

★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖
余泽成(金币+3): 欢迎参与活动! 2011-05-11 23:00:42
余泽成(程序强帖+1): 2011-05-13 21:19:48
不好意思,刚开始写错了


#include"stdio.h"
#include"time.h"
#include"windows.h"

struct ti
{
        int year;
        int month;
        int day;
        int hour;
        int min;
        int second;
};
void judgment(struct ti);

int yearday(struct ti yea)
{
        int a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
        int flag,sum=0;
        printf("请输入年,月,日:";
        scanf("%d,%d,%d",&yea.year,&yea.month ,&yea.day );
   judgment(yea);
        flag=(yea.year%400==0)||(yea.year%4==0&&yea.year%100!=0);
        if(flag==1)
        {
                a[2]++;
        }
       
       
        switch(yea.month)
        {
        case 1:
                sum=sum+a[0]+yea.day ;
                break;
        case 2:
                sum=sum+a[0]+a[1]+yea.day;
                break;
        case 3:
                sum=sum+a[0]+a[1]+a[2]+yea.day;
                break;
        case 4:
                sum=sum+a[0]+a[1]+a[2]+a[3]+yea.day;
                break;
        case 5:
                sum=sum+a[0]+a[1]+a[2]+a[3]+a[4]+yea.day;
                break;
        case 6:
                sum=sum+a[0]+a[1]+a[2]+a[3]+a[4]+a[5]+yea.day;
                break;
        case 7:
                sum=sum+a[0]+a[1]+a[2]+a[3]+a[4]+a[5]+a[6]+yea.day;
                break;
        case 8:
                sum=sum+a[0]+a[1]+a[2]+a[3]+a[4]+a[5]+a[6]+a[7]+yea.day;
                break;
        case 9:
                sum=sum+a[0]+a[1]+a[2]+a[3]+a[4]+a[5]+a[6]+a[7]+a[8]+yea.day;
                break;
        case 10:
                sum=sum+a[0]+a[1]+a[2]+a[3]+a[4]+a[5]+a[6]+a[7]+a[8]+a[9]+yea.day;
                break;
        case 11:
                sum=sum+a[0]+a[1]+a[2]+a[3]+a[4]+a[5]+a[6]+a[7]+a[8]+a[9]+a[10]+yea.day;
                break;
        case 12:
                sum=sum+a[0]+a[1]+a[2]+a[3]+a[4]+a[5]+a[6]+a[7]+a[8]+a[9]+a[10]+a[11]+yea.day;
                break;
               
        }
        printf("%d\n",sum);
        return sum;
       
}


void judgment(struct ti m)
{
        if(m.month>12||m.month<0)
        {
                printf("您输入的月份有误,请重新输入\n";
                yearday(m );
        
               
        }
        else if(m.day<0||m.day>31)
        {
                printf("您输入的日期有误,请重新输入\n";
                yearday(m );
               
        }

       
}


void main()
{
        struct ti ye;
        yearday(ye );


       
}
3楼2011-05-10 23:46:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

huycwork

金虫 (著名写手)

★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖
余泽成(金币+3, 程序强帖+1): 鼓励参与交流! 2011-05-13 21:20:08
俺也来一枚:
CODE:
#include
#include
#include
tm buf;
int main(){
        using namespace std;
        int y, m, d, ds = 0, yb = 0, ye = 0;
        time_t t;
        tm t1, t2;
        while(1){
                if(cin.eof())
                        break;
                cout<<"birthday:"<                 if(cin>>y>>m>>d){
                        buf.tm_year = y - 1900;
                        buf.tm_mon = m - 1;
                        buf.tm_mday = d + 1;
                        t = mktime(&buf);
                }
                if(t == -1){
                        cout<<"error"<                         continue;
                }
                memcpy(&t1, gmtime(&t), sizeof(tm));
                yb = t1.tm_yday;
                t = time(0);
                memcpy(&t2, gmtime(&t), sizeof(tm));
                if(t1.tm_year == t2.tm_year){
                        ye = t2.tm_yday;
                        ds = ye - yb;
                }
                if(t1.tm_year < t2.tm_year){
                        buf.tm_mon = 12 - 1;
                        buf.tm_mday = 31;
                        buf.tm_year = t1.tm_year;
                        t = mktime(&buf);
                        memcpy(&t1, gmtime(&t), sizeof(tm));
                        ye = t1.tm_yday + 1;
                        ds = 1 + ye - yb;
                        yb = 0;
                        for(++buf.tm_year; buf.tm_year < t2.tm_year; ++buf.tm_year){
                                buf.tm_mon = 12 - 1;
                                buf.tm_mday = 31;
                                t = mktime(&buf);
                                memcpy(&t1, gmtime(&t), sizeof(tm));
                                ye = t1.tm_yday + 1;
                                ds += 1 + ye - yb;
                        }
                        ds += t2.tm_yday + 1;
                }
                if(t1.tm_year > t2.tm_year){
                        cout << "YOU ARE NOT BIRTH YET!"<                         continue;
                }
                cout<<"days on live:"<         }
        return 0;
}

漩涡的中心有一块空地,空空的。
4楼2011-05-13 11:05:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 微尘、梦想 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 342电子信息专硕求调剂 +9 你让我怎么荔枝 2026-04-10 10/500 2026-04-11 08:33 by zhq0425
[考研] 295求调剂 +5 ?要上岸? 2026-04-05 6/300 2026-04-11 08:27 by zhq0425
[考研] 药学专硕调剂 +6 ? 一路生?花? 2026-04-10 7/350 2026-04-10 21:08 by zhouxiaoyu
[考研] 287求调剂 +15 Fnhc 2026-04-07 21/1050 2026-04-10 19:09 by chemisry
[考研] 材料工程302分求调剂 +18 zyx上岸! 2026-04-04 18/900 2026-04-10 10:07 by 314126402
[考研] 277求调剂 +19 倪建设 2026-04-06 19/950 2026-04-10 09:24 by guosr9609
[考研] 求调剂 +15 张zic 2026-04-05 16/800 2026-04-10 08:12 by kangsm
[考研] 生物学调剂,一志愿西南大学348,Top期刊一区二作、二区三作,三等奖学金三次 +4 candyyyi 2026-04-09 4/200 2026-04-09 18:39 by l_paradox
[考研] 一志愿电子科技大学085600材料与化工 329分求调剂 +14 Naiko 2026-04-04 14/700 2026-04-09 16:56 by luoyongfeng
[考研] 288求调剂 +15 没有答案_ 2026-04-05 15/750 2026-04-09 10:22 by 5268321
[考研] 283电子信息求调剂 +4 三石WL 2026-04-08 4/200 2026-04-09 10:21 by wp06
[考研] 求调剂 +8 吃口冰激凌 2026-04-07 8/400 2026-04-09 08:03 by 5268321
[考研] 318求调剂 +13 ykyhsa 2026-04-05 15/750 2026-04-08 21:37 by wj165256
[考研] 0703化学调剂 348分 +14 唉我超真没招了 2026-04-06 15/750 2026-04-08 19:16 by 我减肥1
[考研] 071000生物学,一志愿深圳大学296分,求调剂 +12 TIckLw 2026-04-06 13/650 2026-04-07 20:34 by lijunpoly
[考研] (调剂)一志愿报考哈尔滨工业大学0857资源与环境专业378分考生 +7 狠狠加油 2026-04-05 8/400 2026-04-06 16:52 by momo皓
[考研] 一志愿武汉理工大学080200机械工程308分,求调剂 +4 终不似从前 2026-04-05 4/200 2026-04-06 11:46 by 考研学校招点人
[考研] 324求调剂 +3 k可乐 2026-04-05 4/200 2026-04-06 09:54 by 蓝云思雨
[考研] 326求调剂 +3 顾若浮生 2026-04-05 3/150 2026-04-05 18:32 by 蓝云思雨
[考研] 288求调剂,一志愿华南理工大学071005 +6 ioodiiij 2026-04-04 6/300 2026-04-05 10:09 by guoweigw
信息提示
请填处理意见