9月23日资讯 星期四 农历八月(小) 十七

腾讯或将宣布合并搜狗,大部分业务及员工将并入腾讯看点;京东公布双11活动时间表,活动期间涵盖多项促销;支付宝花呗全面接入央行征信系统;荣耀市场份额回升至16.2%,Magic3系列销售势头良好;上海交通大学研究团队实现15用户间的量子安全直接通信;理想汽车注册多个元宇宙相关商标;哈尔滨新增8例确诊病例;广东一村庄提供高额生育补贴;Rivian计划第四季度上市,或成特斯拉竞争对手;8月国内5G手机出货量同比增长。

辛丑年  牛  丁酉月  甲戌日

今日秋分

装修、动土、出行、旅游、求嗣、赴任、修造

搬家、开业、结婚、入宅、领证、开工、安床

图片

一、9月22日消息,腾讯或将于本周正式宣布合并搜狗。按照规划,腾讯看点将吸收绝大部分搜狗业务和员工。

二、京东宣布今年“双11”活动将于10月20日晚8点正式开启预售。10月31日晚8点,消费者提前开抢;11月10日晚8点,京东开启“巅峰28小时”。京东今年“双11”活动将持续至11月14日。

三、支付宝花呗将全面接入央行征信系统。

四、荣耀市场份额已回升到16.2%。荣耀终端有限公司CEO赵明表示,Magic3系列在4K-8K价位段累计销量第三。伴随该系列的热销,荣耀市场份额已回升到16.2%。

五、上海交通大学研究团队在量子通信领域获得突破。该团队利用量子安全直接通信原理,首次实现了网络中15个用户之间的安全通信,其传输距离达40公里。该研究为未来基于卫星量子通信网络和全球量子通信网络奠定了基础。

六、理想汽车关联公司申请注册多个“元宇宙”相关商标,国际分类涉及运输工具、机械设备、燃料油脂等。

七、哈尔滨新增8例确诊,其中3例由重点人群筛查阳性转确诊。

八、广东一村每生1个小孩资助9万元。广东一村公告落实生育补贴:每月每娃至少三千,资助至两岁半。

九、世界首富、亚马逊创始人贝索斯投资的电动汽车企业Rivian计划在第四季度上市,并希望通过此次IPO融资至多80亿美元,估值或接近800亿美元。业内普遍认为,这或许会成为特斯拉的劲敌。

十、8月国内5G手机出货量1768.8万部,同比增9.4%。

子任务4:确定程序所需的数据结构 经过以上分析可知,为了得到公历期对应的星期、农历期、节气、节程序需要预知以下数据: 1月1的星期:weekday_2025; 1月1农历期:lunar_start_date_2025; 每个农历月份的天数:lm_days_2025; 是否有农历闰月。若有,是几月:lm_leap_month_2025; 每个节气对应的公历期:solar_terms_2025; 每个节对应的公历期或农历期:feasts。 查阅得到这些信息,以合适的形式写进程序中即可。(把数据写进程序,称为数据“硬编码”,是比较糟糕的做法。但作为最初的探索,却是最快能够看到结果的。后续将分离程序与数据,解决数据“硬编码”的问题) 其中,除了weekday与feasts之外,其余都是每年有一份数据。其中,下一年的weekday可以轻而易举地按照上一年的weekday计算得到,因而只需要保存其中某一年的weekday,而不需要每年都保存一份。 节feasts与年份无关,比如每年的国庆节都是10月1、春节都是正月初一,因而也无需每年都保存一份。 其余数据,均与年份有关,需要每年保存一份。 期表示 期,是程序中的基本概念,完整的期包含公历期、农历期、星期、节气、节等多项成员。比如,可以表示为: struct u_date_t { short year; char month; char day; }; struct full_date_t { struct u_date_t solar_date; struct u_date_t lunar_date; char weekday; char solar_term; char feast; }; 这样做当然是可以的,但可能使程序代码显得冗长。由于T1任务中并没有用到full_date_t结构体的情形,为使程序代码简短,暂不考虑这样表示期,但保留struct u_date_t结构体作为公历期与农历期统一的表示方式。 关键是要解决第2步中“预知数据”的表示及存储。 计算星期几所需的数据 每年1月1是星期几,可以从1970年1月1是星期几计算得到。因而,只需要存储weekday_1970即可。 const char weekday_1970 = 4; /* 1970年1月1星期四 */ 节对应的期只需要月、,可以表示为: const struct feast_t { enum {SOLAR, LUNAR} type; struct u_date_t u_date; const char * name; } g_feasts[] = { {SOLAR, {0, 1, 1}, "元旦"}, {LUNAR,{0, 1, 1}, "春节"}, {SOLAR, {0, 10, 1}, "国庆节"}, {LUNAR, {0,5,5}, "端午节"} }; 更多的节按同样格式加到结构体数据中即可。借用之前定义的struct u_date_t结构体时,此处用不到其中的year成员,初始化为用不到的0即可。 每年需要单独存储的数据 以下4个数据每年需要单独存储: 1月1农历期:lunar_start_date_2025; 每个农历月份的天数:lm_days_2025; 是否有农历闰月。若有,是几月:lm_leap_month_2025; 每个节气对应的公历期:solar_terms_2025; 可以放到同一个struct中: struct lunar_info_t { struct u_date_t lunar_start_date; char lm_days[12]; /* 12个农历月每月的天数 */ char lm_leap_month; /* 农历闰月的月份序号,无闰月时为0 */ char solar_terms[24]; /* 24个节气对应的公历期 */ } g_lunar_info[130] = {……}; /* 从1970~2099共130年 */ 完成以上两个struct之后,发现u_date_t.year到处都用不到,删除该成员,相应修改初始化数据。注意:这一步必须要等到最后再做,不要过早地下结论。这旧工作属于“优化”的范畴,过早优化是万恶之源。首先按部就班、不厌其烦地完成可以运行的程序,绝不在程序还不能运行之前开始优化,才是编程的正确做法。 基础数据 除了参与计算的数据之外,星期、农历月份与期、节气在程序内部都使用整数表示,而输出时都需要转换成字符串,这类数据统一放到基础数据中。 const stuct base_info_t { const char weekday_1970; const char * wd_name[7]; const char * lm_name[12]; const char * ld_name[30]; const char * st_name[24]; } g_bi = { .weekday_1970 = 4, .wd_name = {"星期", "星期一", "星期二","星期三","星期四","星期五", "星期六"}, .lm_name = {"正月", "二月","三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "冬月", "腊月"}, .ld_name = {"初一", "初二", "初三", "初四", "初五", "初六", "初七", "初八", "初九", "初十", "十一", "十二", "十三", "十四", "十五", "十六", "十七", "十八", "十九", "二十", "廿一", "廿二", "廿三", "廿四", "廿五", "廿六", "廿七", "廿八", "廿九", "三十"}, .st_name = {"小寒", "大寒", "立春", "雨水", "惊蛰", "春分", "清明", "谷雨", "立夏", "小满", "芒种", "夏至", "小暑", "大暑", "立秋", "处暑", "白露", "秋分","寒露", "霜降", "立冬", "小雪", "大雪", "冬至"} }; 有了如上分析和数据基础,可以得到能够正确计算出每天是星期几,以及2025年每天对应农历期的程序。 写出完整的C语言程序代码。
06-30
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值