nobugdebug 2023-01-17 21:19 采纳率: 89.5%
浏览 70
已结题

编程输入年月日求该日期是所在年的第几天。(标签-c语言)

c语言。编程实现用户输入年月日,求该日期是所在年的第几天。

输入:2021-3-5 输出:第64天

解释:经历了1月31天,2月28天,和3月的5天,一共是31+28+5=64天
程序中已定义了days数组,该数组保存了12个月的天数,其中2月份的天数,你需要根据用户输入的年份来进行修改。

提示:某一年year是闰年的条件是满足下列二者之一:

  1. year能被4整除,但不能被100整除; 2. year能被400整除

输入格式:"%d-%d-%d"
输出格式:"第%d天"

程序运行示例:
输入:2020-12-31
输出:第366天

【编程要求】 以下给出两段代码,请自行选择复制其中一段代码, 补充完成。 请勿修改已有代码!

//A
#include <stdio.h> 
#define MONTHS 12 
int main() 
{ 
  int days[MONTHS] = { 31,28,31,30,31,30,31,31,30,31,30,31 }; 
  int year, month, day; 
  int sum = 0; 

  //****请补充代码**** 

  return 0; 
}


//B
#include <stdio.h> 
#define MONTHS 13 
int main() 
{ int days[MONTHS] = { 0, 31,28,31,30,31,30,31,31,30,31,30,31 }; 
  int year, month, day; 
  int sum = 0; 

  //****请补充代码**** 

  return 0; }


请问这两段代码在for语句中的判断条件有哪些不同?为什么?请详细解答一下。

  • 写回答

2条回答 默认 最新

  • heart_6662 2023-01-17 21:34
    关注

    望采纳!!!点击回答右侧采纳即可!!
    A段代码中的for语句判断条件为i<MONTHS,即i的值小于12;
    B段代码中的for语句判断条件为i<MONTHS,即i的值小于13。
    因为A段代码中的days数组长度为12,而B段代码中的days数组长度为13,所以A段代码中的for语句判断条件为i<MONTHS,即i的值小于12,而B段代码中的for语句判断条件为i<MONTHS,即i的值小于13。
    不知道我解答清楚没有

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 1月25日
  • 已采纳回答 1月17日
  • 创建了问题 1月17日

悬赏问题

  • ¥15 宇视监控服务器无法登录
  • ¥15 PADS Logic 原理图
  • ¥15 PADS Logic 图标
  • ¥15 电脑和power bi环境都是英文如何将日期层次结构转换成英文
  • ¥15 DruidDataSource一直closing
  • ¥20 气象站点数据求取中~
  • ¥15 如何获取APP内弹出的网址链接
  • ¥15 wifi 图标不见了 不知道怎么办 上不了网 变成小地球了
  • ¥50 STM32单片机传感器读取错误
  • ¥50 power BI 从Mysql服务器导入数据,但连接进去后显示表无数据