一段混乱的日子又要过去了

    额,整个的工作的下半年很混乱,虽然拿了个部门级别的奖,但是这不是我想要的,其实我的工作状态真的很不好,

连我在学校的工作状态的十分之一都没有呢,虽然大学的大二下半年就很混乱的,但是没想到刚工作的第一个半年就那么混乱。

其实我应该习惯了,我的生活从小到现在一直都会有很多很多离奇的事情发生的,有时候比小说里写的都要戏剧化的,周围

的人只要和我沾上边好像就会碰上比较离奇的事情的,呵呵。。。

     一个多月的恋情结束了,虽然彼此知道不合适,但是还是坚持了一段时间,虽然说出来对大家都好,但是心里还是难免

有些难过和失落的。跟好朋友说,他就说这毕竟是一份感情,感情的结束,无论原因是什么,难过是正常的。所以要坚强起来

     庆幸的是,从今往后我又多了一个可以任意欺负的男生朋友了,呵呵。。。

 

     恩,浑浑噩噩的日子快点过去吧,要坚强起来,我是打不死的小强,要做最好的自己!

好的,下面是一段用于计算给定日期对应星期几的C语言程序。我们将基于您提供的初始条件(如2021年1月1日是星期五),并通过输入指定的年、月、日来获取该日期对应的星期几。 ```c #include <stdio.h> // 函数声明:计算给定日期是这一年的第几天 int dayOfYear(int year, int month, int day); // 主函数 int main() { // 定义变量存储用户输入的年份、月份和日子 int year; int month; int day; printf("请输入年份(YYYY): "); scanf("%d", &year); printf("请输入月份(MM): "); scanf("%d", &month); printf("请输入日子(DD): "); scanf("%d", &day); if (year == 2021 && month >= 1 && month <= 12 && day > 0 && day <= 31){ // 计算目标日期距年初有多少天,并减去第一天为周五的影响因子 int daysPassed = dayOfYear(year, month, day) - 1; // 根据已知2021-01-01是Friday(设其编号为5) const int baseWeekDay = 5; // 求出相对于第一个星期五过去了多少天取模7后的值,再加上基数即可获得确切星期 int weekDayNumber = ((daysPassed % 7) + baseWeekDay) % 7; char* weekDays[] = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"}; printf("%d-%02d-%02d 是 %s\n", year, month, day, weekDays[weekDayNumber]); } else { printf("无效的日期范围。\n"); } return 0; } // 实现辅助函数: 判断是否闰年 bool isLeapYear(int y) { return (y % 4 == 0 && y % 100 != 0) || (y % 400 == 0); } // 辅助函数定义:返回当年某个月的日历表最大天数 int getMonthMaxDays(int y, int m) { switch(m){ case 2 : return isLeapYear(y)? 29 : 28 ; case 4 : case 6 : case 9 : case 11: return 30; default: return 31; } } // 完整版辅助函数:给出一个有效日期,判断它是本年的第几天。 int dayOfYear(int year, int month, int day) { int sum = 0; for (int i = 1; i < month; ++i) sum += getMonthMaxDays(year, i); // 累计所有前几个月的最大天数 return sum + day; // 再加上当月实际过去的天数 } ``` ### 这里我们做了哪些事情? - `main` 中负责接收用户的输入; - 使用了两个帮助函数 `isLeapYear()` 来检测是否为润年 和 `getMonthMaxDays()` 获取特定月份应该有的最多天数; - 最终通过 `dayOfYear()` 将具体的日期转化为今年内的总天数形式; - 根据所得到的信息结合基础信息(`baseWeekDay`) 推导最终答案。 请注意这段代码仅适用于公历年份,并假设输入的数据都是合法合理的。此外,在处理一些特殊情况时可能会有所不足,比如跨越多个世纪的变化规则等复杂情形未做特别优化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值