首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >计算一年中的某一天

计算一年中的某一天
EN

Stack Overflow用户
提问于 2013-09-28 11:38:08
回答 4查看 2.1K关注 0票数 1

我正在尝试用C语言编写一个程序,给定来自用户的这两个数据集。年份:范围1901-2099和年中的日期:范围1-366我需要一个公式来计算MM/DD/YYYY格式的日期。还有一件事。没有IF/ELSE语句。不允许AND/OR或大于或小于。

EN

Stack Overflow用户

发布于 2013-09-28 12:02:05

您可以使用嵌套的switch case来避免使用if-else。

  1. 找出今年是否是闰年。
  2. 创建四个月桶(1-99)、(100-199)..存储桶编号将用作箱号。
  3. 现在检查一天中最左边的位,并写入一个开关箱体,将其分配到右侧存储桶中。
  4. 每个存储桶也可以被分成4个以上的存储桶(将使用闰年信息)。
  5. 对中间位重复步骤3,并根据结果(情况)切换到适当的存储桶。

简而言之,逻辑可能如下:

代码语言:javascript
运行
复制
isLeapYear = year % 4

Switch(isLeapYear)
Case 0: {
  first_bucket = days/4
  Switch(first_bucket)
  {
   Case 0: {
            days_left = days % 100
            second_bucket = days / 50;
// ...
// ...
}
Case 1, 2, 3: {
// Similar logic for non-leap year
// ...
}
票数 2
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19062961

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档