PTA-今天是本学期的第几周的第几天?

根据输入的开学日期和当前的日期,判断当前日期是本学期的第几周的星期几。

输入格式:

在第一行中给出开学日期,年月日中间用‘-’隔开
在第二行中给出当前的日期,年月日中间用‘-’隔开

输出格式:

对每一组输入,在一行中输出‘今天是本学期的第m周的第n天’。

输入样例:

在这里给出一组输入。例如:

2022-2-28
2022-3-6

输出样例:

在这里给出相应的输出。例如:

今天是本学期的第1周的第7

python代码:

year1,month1,day1=input().split('-')
year2,month2,day2=input().split('-')
year1=int(year1)
year2=int(year2)
month1=int(month1)
day1=int(day1)
month2=int(month2)
day2=int(day2)
list1=[0,31,28,31,30,31,30,31,31,30,31,30,31]
list2=[0,31,29,31,30,31,30,31,31,30,31,30,31]
d=0
if (year1%4==0 and year1%100!=0) or (year1%400==0):
    flag=1
else:
	flag=0
#print(flag)
if flag == 0:
    for i in range(month1, month2):
        d = d + list1[i]
else:
    for i in range(month1,month2):
        d=d+list2[i]
d=d-day1+day2
m=d/7+1
d=d%7+1
m=int(m)
print("今天是本学期的第",end='')
print(m,end='')
print("周的第",end='')
print(d,end='')
print("天")

C语言代码:

#include
int main(void)
{
	int year1,month1,day1,year2,month2,day2,m,d=0;
	int i,j,flag;
	int a[2][13]={{0,31,28,31,30,31,30,31,31,30,31,30,31},{0,31,29,31,30,31,30,31,31,30,31,30,31}};
	scanf("%d-%d-%d",&year1,&month1,&day1);
	scanf("%d-%d-%d",&year2,&month2,&day2);
	if(year1%4==0&&year1%100!=0||year1%400==0)
		flag=1;
	else
		flag=0;
	for(i=month1;i<month2;i++)
	{
		d=d+a[flag][i];
	}
	d=d-day1+day2;
	m=d/7+1;
	d=d%7+1;
	printf("今天是本学期的第%d周的第%d天",m,d);
	return 0;
}

你可能感兴趣的:(PTA,Python程序设计,C语言程序设计,c语言,python)