| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3891 人关注过本帖
标题:输入今天的日期,求明天的日期,出错了,不知怎么回事
取消只看楼主 加入收藏
lrcdddd
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2014-7-3
结帖率:11.11%
收藏
 问题点数:0 回复次数:6 
输入今天的日期,求明天的日期,出错了,不知怎么回事
struct date
{
    int year;
    int month;
    int day;
};
void main()
{
    void cf(struct date *p);
    struct date s1,*p;
    printf("请输入今天的日期:  ");
    scanf("%d %d %d",&s1.year,&s1.month,&s1.day);
    p=&s1;
    cf(p);
}
void  cf(struct date *p)
{   
    struct date s2;
    if(p->day<28)
        s2.year=p->year;
        s2.month=p->month;
        s2.day=p->day+1;
    else if(p->day==28)
         if(p->year%4==0&&p->year%100!=0||p->year%400==0)
           s2.year=p->year;
           s2.month=p->month;
           s2.day=p->day+1;
         else
             s2.year=p->year;
             if(p->month==2)
               s2.month=3;
               s2.day=1;
             else
               s2.month=p->month;
               s2.day=p->day+1;
     else if(p->day==29)
         if(p->year%4==0&&p->year%100!=0||p->year%400==0)
             if(p->month==2)
               s2.month=3;
               s2.day=1;
             else
               s2.year=p->year;
               s2.month=p->month;
               s2.day=p->day+1;
    else if(p->day==30)
        if(p->month==1||3||5||7||8||10||12)
           s2.year=p->year;
           s2.month=p->month;
           s2.day=p->day+1;
        else
           s2.year=p->year;
           s2.month=p->month+1;
           s2.day=1;
    else
        if(p->month==12)
            s2.year=p->year+1;
        else
           s2.year=p->year;
           s2.month=p->month+1;
           s2.day=1;
    printf("输出新的日期:%d %d %d\n",s2.year,s2.month,s2.day);
}







            


 

2014-07-24 23:10
lrcdddd
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2014-7-3
收藏
得分:0 
是啊,不知怎么简化
2014-07-25 06:06
lrcdddd
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2014-7-3
收藏
得分:0 
printf scanf运行为undeclared identifier,标准库函数,怎么会成为未定义标识符
2014-07-25 12:36
lrcdddd
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2014-7-3
收藏
得分:0 
struct date
{
    int year;
    int month;
    int day;
};
void main()
{
    void cf(struct date *p);
    struct date s1,*p;
    printf("请输入今天的日期:  ");
    scanf("%d %d %d",&s1.year,&s1.month,&s1.day);
    p=&s1;
    cf(p);
}
void  cf(struct date *p)
{   
    struct date s2;
    if(p->day<28)
    {
        s2.year=p->year;
        s2.month=p->month;
        s2.day=p->day+1;
    }
    else if(p->day==28)
    {
         if(p->year%4==0&&p->year%100!=0||p->year%400==0)
         {
           s2.year=p->year;
           s2.month=p->month;
           s2.day=p->day+1;
         }
         else
             s2.year=p->year;
             if(p->month==2)
             {
               s2.month=3;
               s2.day=1;
             }
             else
             {
               s2.month=p->month;
               s2.day=p->day+1;
             }
    }
    else if(p->day==29)
         if(p->year%4==0&&p->year%100!=0||p->year%400==0)
             if(p->month==2)
             {
               s2.year=p->year;
               s2.month=3;
               s2.day=1;
             }
             else
             {
               s2.year=p->year;
               s2.month=p->month;
               s2.day=p->day+1;
             }
         else
         {
            s2.year=p->year;
            s2.month=p->month;
            s2.day=p->day+1;
         }
    else if(p->day==30)
        if(p->month==1||3||5||7||8||10||12)
        {
           s2.year=p->year;
           s2.month=p->month;
           s2.day=p->day+1;
        }
        else
        {
           s2.year=p->year;
           s2.month=p->month+1;
           s2.day=1;
        }
    else
        if(p->month==12)
        {
            s2.year=p->year+1;
            s2.month=1;
            s2.day=1;
        }
        else
        {
           s2.year=p->year;
           s2.month=p->month+1;
           s2.day=1;
        }
    printf("输出新的日期:%d年%d月%d日\n",s2.year,s2.month,s2.day);
}
2014-07-25 12:51
lrcdddd
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2014-7-3
收藏
得分:0 
发现问题了,原来#include<stdio.h>没有引用
2014-07-25 12:57
lrcdddd
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2014-7-3
收藏
得分:0 
不过五楼的设计思想更科学,值得学习!!
2014-07-25 12:59
lrcdddd
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2014-7-3
收藏
得分:0 
if(p->month==1||3||5||7||8||10||12)
这样表述行吗,大侠指点
2014-07-25 13:10
快速回复:输入今天的日期,求明天的日期,出错了,不知怎么回事
数据加载中...
 
   



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

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