Latest web development tutorials

Exercice C Exemple 4

100 cas de la langue classique C 100 cas de la langue classique C

Titre: Entrez un an, un certain jour, le jour du jugement est le jour de l'année?

Analyse du programme: Mars 5, par exemple, devrait être mis avant les deux mois ensemble, puis ajouter cinq jours ou les quelques premiers jours de cette année, des circonstances particulières, année bissextile et l'entrée de plus de 3 mois pour payer plus à considérer quand un jour .

Source Code:

#include <stdio.h>
int main()
{
    int day,month,year,sum,leap;
    printf("\n请输入年、月、日,格式为:年,月,日(2015,12,10)\n");
    scanf("%d,%d,%d",&year,&month,&day);  // 格式为:2015,12,10
    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) { // *如果是闰年且月份大于2,总天数应该加一天
        sum++;
    }
    printf("这是这一年的第 %d 天。",sum);
    printf("\n");
}

L'exemple ci-dessus sortie est:

请输入年、月、日,格式为:年,月,日(2015,12,10)
2015,10,1
这是这一年的第 274 天。

100 cas de la langue classique C 100 cas de la langue classique C