如何用函数去计算x年x月x日是(C#)

如何用函数去计算x年x月x日是?

由于现在人工智能的普及,我们往往会用计算机去算,或者去记录事情

1.计算某一年某一个月有多少天
2.计算某年某月某日是周几
c# 复制代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 程序日
{
    internal class Program
    {
        static void Main(string[] args)
        {
            //
            Console.WriteLine(DateTime.Now.DayOfWeek);//这个是计算今天周几
            Console.WriteLine(DateTime.Now.DayOfYear);//这个是计算这个月是几号


            //计算某年某月有多少天
            Console.WriteLine("请输入年份");
            int year = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("请输入月份");
            int month = Convert.ToInt32(Console.ReadLine());
            int day = DateTime.DaysInMonth(year, month);
            Console.WriteLine($"{year}年{month}月,有{day}天");

            //2.计算某年某月某日是周几
            Console.WriteLine("请输入年份");
            int y=Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("请输入月份");
            int m=Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("请输入日份");
            int d=Convert.ToInt32(Console.ReadLine());
            if (m == 1 || m == 2) { m += 12; y--; }
            if (m == 1 || m == 2) { m += 12; y--; }
            int week = (d + 2 * m + 3 * (m + 1) / 5 + y + y / 4 - y / 100 + y / 400 + 1) % 7;
            string weekstring = "";
            switch (week)
            {
                case 0: weekstring = "星期日"; break;
                case 1: weekstring = "星期一"; break;
                case 2: weekstring = "星期二"; break;
                case 3: weekstring = "星期三"; break;
                case 4: weekstring = "星期四"; break;
                case 5: weekstring = "星期五"; break;
                case 6: weekstring = "星期六"; break;
                default: break;
            }
            Console.WriteLine($"{year}年 {month} 月 {day} 日是{weekstring}" );
        }
    }
}
相关推荐
Lost of 程序猿3 小时前
用 YARP 为 .NET 微服务搭一座“立交桥“:路由转发与生产配置实践
c#·asp.net
码行山野赴时序归途3 小时前
链表家族收官篇:循环链表
c语言·开发语言·数据结构·链表
景熙55233 小时前
单体项目编写思路和落地形式
java·开发语言
计算机毕设定制辅导-无忧学长4 小时前
《基于SpringBoot的未成年人健康知识科普平台的设计与实现》
java·开发语言·vue.js·spring boot·未成年人健康知识科普平台
Ivanqhz4 小时前
Ping-Pong 双缓冲
开发语言·人工智能·python·深度学习·mlir
m0_734571764 小时前
深入理解C++ RAII
开发语言·c++
泡海椒4 小时前
jquick-pdf 表格实战:动态数据 PDF 报表生成
java·开发语言·pdf
aramae4 小时前
模拟实现memset()(C语言)
c语言·开发语言·后端
wuyk5555 小时前
【Socket 进阶之路】第 7 章 IO 多路复用 select & poll 完整实战|多 fd 监听、超时等待、优缺点横向对比
服务器·开发语言·网络·数据库·物联网
船厂电气自动化ai大模型5 小时前
AI大模型与数学|第81天 课程:正交向量、正交基、格拉姆‑施密特(Gram‑Schmidt)正交化
开发语言·数据结构·人工智能·线性代数·机器学习