【问题描述】输入一个日期的年、月、日,计算并输出这天是该年的第几天
【思路分析】
首先判断是否为闰年,如果是,那么二月份就有29天。之后计算前(m-1)个月一共有多少天再加上d(最后一个月的天数)即可得到最后结果。
【主程序代码】
%%
clear;
close all;
%%
y = 2022;
m = 11;
d = 10;
res = findday(y,m,d);
【findday函数】
function y = findday( y,m,d )
%UNTITLED2 此处显示有关此函数的摘要
% 此处显示详细说明
A = [31,28,31,30,31,30,31,31,30,31,30,31];
if mod(y,4)==0&&mod(y,100)~=0||mod(y,400)==0
A(2)=29;
end
y = sum(A(1:m-1))+d;
fprintf('该日是第 %d 天',y);
end
【运行结果】