【work】输出日期为那一年的第几天

题目:

写一个程序输出下面两个日期2000-05-01,2001-06-30分别属于那一年的哪一天。


答案:

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    
    //申明要用到的变量:年、月、日、计数、当月的天数
    int y,m,d,t=0,a[13];
    a[0]=0;
    a[1]=31;
    a[3]=31;
    a[4]=30;
    a[5]=31;
    a[6]=30;
    a[7]=31;
    a[8]=31;
    a[9]=30;
    a[10]=31;
    a[11]=30;
    a[12]=31;
    
    //提示输入信息,并读取年月日
    NSLog(@"请输入你要查询的年月日,记得用空格隔开哦:\n");
    scanf("%d %d %d",&y,&m,&d);
    
    //判断是否为闰年
    if(y%4 == 0 && y%100 != 0) a[2]=29;
    else if(y%100 == 0 && y%400 == 0) a[2]=29;
    else a[2]=28;
    
    //计算前几个月的总天数t
    for (int i=0; i<=m-1; i++) {
        t=t+a[i];
    }
    
    //输出总天数:前几个月的天数+当月天数
    NSLog(@"%d年%d月%d日是%d年的第%d天.\n",y,m,d,y,t+d);
    
}
主要知识点:

数组、判断语句、循环语句的应用。


关联知识点:

闰年的定义

能被4整除且又不能被100整除或者能直接被400整除的是闰年。

闰年的2月是29天,一年366天;

平年的2月是28天,一年365天。



posted @ 2015-10-09 19:41  Mr.Kay  阅读(151)  评论(0)    收藏  举报