zoukankan      html  css  js  c++  java
  • c语言—输入年、月、日,算出该日是该年的第几天

    /* Note:Your choice is C IDE */
    #include "stdio.h"
    void main()
    {
        int y,m,d;//年、月、日
        int cr,ds=0,i;//cr:判断是否为闰年的变量,是为1,否为0;ds:天数的总和;i是一个循环变量
        char run[12] = {31,29,31,30,31,30,31,31,30,31,30,31};//闰年的每月的天数
        char ping[12] = {31,28,31,30,31,30,31,31,30,31,30,31};//平年的每月的天数
        printf("请输入你要查询的年份:
    ");
        scanf("%d",&y);//输入年份
        cr = y%4==0&&y%100!=0||y%400==0;//判断是否为闰年,是为1,否为0
        do{
            printf("请输入月份:
    ");
            scanf("%d",&m);//输入月份
            if(m<0||m>12){//判断有没输入错误
            printf("输入有误,请重新输入!
    ");}
        }while(m<0||m>12);//有错重新输入
        do{
            printf("请输入日期:
    ");
            scanf("%d",&d);//输入日期
            if(d>31){//判断有没有输入大于31号的
                printf("输入有误,请重新输入!(一个月最多有31天)
    ");
            }else if(d>run[m-1]&&cr==1)//判断闰年某天数是否在该月的最多天数内
            {
                printf("%d月最多有%d天,请重新输入!
    ",m,run[m-1]);
            }else if(d>ping[m-1]&&cr==0)//判断平年某天数是否在该月的最多天数内
            {
                printf("%d月最多有%d天,请重新输入!
    ",m,ping[m-1]);
            }
        }while((d>run[m-1]&&cr==1)||(d>ping[m-1]&&cr==0));
        if(cr == 1){//计算闰年的某天在该年的总天数
            for(i=0;i<m-1;i++){
            ds += run[i];
            }
        }else {//计算平年的某天在该年的总天数
            for(i=0;i<m-1;i++){
                ds += ping[i];
            }
            ds += d;//加上当月的天数
        printf("%d年%d月%d日是该年的第%d天!",y,m,d,ds);
        }  
        
    }
  • 相关阅读:
    滚动条滚动方向
    阶乘函数-尾递归
    返回顶部
    CommonJS
    vuessr
    随机字符串
    indexedDB
    深层次选择器
    Vue3.0简单替代Vuex
    shell 学习笔记
  • 原文地址:https://www.cnblogs.com/liangjinjie/p/7678555.html
Copyright © 2011-2022 走看看