标题:一道求天数的题目
只看楼主
不同认为
Rank: 1
等 级:新手上路
帖 子:93
专家分:3
注 册:2015-11-25
结帖率:57.14%
已结贴  问题点数:20 回复次数:9 
一道求天数的题目
#include <stdio.h>
int main()
{  
    int y,m,d,day=0,i,a[13]={31,28,31,30,31,30,31,31,30,31,30,31};
 while(scanf("%d/%d/%d",&y,&m,&d)!=EOF)
 {
  if((y%4==0&&y%100!=0)||y%400==0)
      a[1]++;
  for(i=0;i<m-1;i++)
   day+=a[i];
  day+=d;
 printf("%d\n",day);
 }
 return 0;
}不知哪里错了 数据对 提交错了
2015-12-20 22:32
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
假设你输入   0/0/0   会有神马结果呢

DO IT YOURSELF !
2015-12-20 22:35
不同认为
Rank: 1
等 级:新手上路
帖 子:93
专家分:3
注 册:2015-11-25
得分:0 
回复 2楼 wp231957
#include <stdio.h>
int main()
{  
    int t=1,y,m,d,day=0,i,a[13]={31,28,31,30,31,30,31,31,30,31,30,31};
while(scanf("%d/%d/%d",&y,&m,&d)!=EOF)
{
    if(y==0&&m==0&&d==0)
    {printf("0\n");
    break;}
  if((y%4==0&&y%100!=0)||y%400==0)
      a[1]++;
  for(i=0;i<m-1;i++)
  day+=a[i];
  day+=d;
printf("%d\n",day);
}

return 0;
}这样改的话输入0/0/0后就不能再输入其他数据了  要怎么改
2015-12-20 22:55
不同认为
Rank: 1
等 级:新手上路
帖 子:93
专家分:3
注 册:2015-11-25
得分:0 
回复 2楼 wp231957
#include <stdio.h>
int main()
{  
    int t=1,y,m,d,day=0,i,a[13]={31,28,31,30,31,30,31,31,30,31,30,31};
while(scanf("%d/%d/%d",&y,&m,&d)!=EOF)
{
    if(y==0&&m==0&&d==0)
    {printf("0\n");
    continue;}
  if((y%4==0&&y%100!=0)||y%400==0)
      a[1]++;
  for(i=0;i<m-1;i++)
  day+=a[i];
  day+=d;
printf("%d\n",day);
}

return 0;
}同一个程序 为什么那组输入 71的会变成91  71才是正确的
2015-12-20 23:11
不同认为
Rank: 1
等 级:新手上路
帖 子:93
专家分:3
注 册:2015-11-25
得分:0 
#include <stdio.h>
int main()
{  
    int y,m,d,day,i,a[13]={31,28,31,30,31,30,31,31,30,31,30,31};
 while(scanf("%d/%d/%d",&y,&m,&d)!=EOF)
 {
  if ((y%4==0&&y%100!=0)||y%400==0)
      a[1]++;
  for(i=0,day=0;i<m-1;i++)
   day+=a[i];
  day+=d;
 printf("%d\n",day);
 day=0;
 }
 return 0;
}这样感觉输入都是对的 还是提示答案错了 不知道还漏了什么情况
2015-12-20 23:37
newdos
Rank: 9Rank: 9Rank: 9
等 级:禁止访问
威 望:6
帖 子:251
专家分:1169
注 册:2012-8-13
得分:10 
a[1]++;
可能有逻辑错误吧,如果连续输入2个闰年,岂不是2月变30天了?
2015-12-20 23:47
不同认为
Rank: 1
等 级:新手上路
帖 子:93
专家分:3
注 册:2015-11-25
得分:0 
回复 6楼 newdos
解决了 就是这个问题  忘记每次结束后把a【1】变成28了
2015-12-20 23:53
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:10 
月份超过12日超31

DO IT YOURSELF !
2015-12-21 05:25
不同认为
Rank: 1
等 级:新手上路
帖 子:93
专家分:3
注 册:2015-11-25
得分:0 
回复 8楼 wp231957
问今天是一年中的第几天 和给定日期问是一年的第几年 这两种问法一样么  不一样的话哪里不一样
2015-12-22 13:25
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
今天就是今天  就是now
给定的日期  可以是任意天    这属于语文知识  很难吗

DO IT YOURSELF !
2015-12-22 14:01



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-460413-1-1.html




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

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