| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5212 人关注过本帖
标题:题目:输入某年某月某日,判断这一天是这一年的第几天?
只看楼主 加入收藏
langmanxiang
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2016-3-24
收藏
得分:0 
回复 10楼 grmmylbs
我试了试,这两个都行
2016-03-24 16:42
grmmylbs
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:54
帖 子:1409
专家分:5845
注 册:2016-2-14
收藏
得分:0 
怎么可能啊,测试过平年的结果对吗?
2016-03-24 16:49
qq1023569223
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:湖南科技大学
等 级:贵宾
威 望:26
帖 子:2753
专家分:13404
注 册:2010-12-22
收藏
得分:0 
程序代码:
#include <stdio.h>

int main()
{
    int dayofmonth[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
    
    int day,month,year;
    printf("Input year,month,day:");
    scanf("%d,%d,%d",&year,&month,&day);
    
    int i,total=day;
    
    for(i=1;i<month;i++)
    {
        total+=dayofmonth[i];
    }
    
    if(year%400==0||(year%4==0&&year%100!=0))
    {
        if(month>2)  total+=1;
    }
    
    printf("It is the %dth day of the year\n",total);
    
    return 0;
}


[此贴子已经被作者于2016-3-25 15:22编辑过]


   唯实惟新 至诚致志
2016-03-24 16:51
grmmylbs
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:54
帖 子:1409
专家分:5845
注 册:2016-2-14
收藏
得分:0 
回复 13楼 qq1023569223
这样改一下更好

#include <stdio.h>

int main()
{
    int dayofmonth[13] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };

    int day, month, year;
    printf("Input year,month,day:");
    scanf("%d,%d,%d", &year, &month, &day);

    int i, total = day;

    if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0))
    {
        dayofmonth[2] += 1;
    }

    for (i = 1; i<month; i++)
    {
        total += dayofmonth[i];
    }
    printf("It is the %dth day of the year\n", total);

    return 0;
}
2016-03-24 16:55
langmanxiang
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2016-3-24
收藏
得分:0 
回复 11楼 langmanxiang
   ok,ok,
2016-03-24 16:59
langmanxiang
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2016-3-24
收藏
得分:0 
回复 13楼 qq1023569223
哇,真棒,还可以这样
2016-03-24 17:00
langmanxiang
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2016-3-24
收藏
得分:0 
回复 14楼 grmmylbs
好多写法呀
2016-03-24 17:00
langmanxiang
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2016-3-24
收藏
得分:0 
回复 14楼 grmmylbs
int dayofmonth[]={0,0,31,28,31,30,31,30,31,31,30,31,30};
这样写好像也行
2016-03-24 17:12
雪泥鸿爪
Rank: 1
来 自:保定
等 级:新手上路
帖 子:1
专家分:0
注 册:2016-3-23
收藏
得分:0 


[此贴子已经被作者于2016-3-25 15:07编辑过]

2016-03-25 15:06
仙剑青霞庄
Rank: 2
等 级:论坛游民
帖 子:5
专家分:10
注 册:2016-3-17
收藏
得分:0 
回复 楼主 langmanxiang
这样貌似可以,你可以试试。
#include <stdio.h>
int main(void)
{
    int day, year, month, sum, leap;
    printf("please input year,month,day\n");
    scanf("%d", &year);
    scanf("%d", &month);
    scanf("%d", &day);
    switch (month)
    {
    case 1:sum = 0;
        break;
    case 2:sum = 31;
        break;
    case 3:sum = 59;
        break;
    case 4:sum = 90;
        break;
    case 5:sum = 120;
        break;
    case 6:sum = 151;
        break;
    case 7:sum = 181;
        break;
    case 8:sum = 212;
        break;
    case 9:sum = 243;
        break;
    case 10:sum = 273;
        break;
    case 11:sum = 304;
        break;
    case 12:sum = 334;
        break;
    default:
        printf("data error");
        break;
        sum = sum + day;
        if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0))
            leap = 1;
        else
            leap = 0;
        if (leap == 1 && month>2)
            sum += 1;
    }
    printf("It is the %dth day of %d year.\n", sum, year);
    return 0;
}
2016-03-25 16:50
快速回复:题目:输入某年某月某日,判断这一天是这一年的第几天?
数据加载中...
 
   



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

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