【C语言蓝桥杯每日一题】—— 跑步锻炼😎
- 前言🙌
- 排序🙌
- 总结撒花💞
😎博客昵称:博客小梦
😊最喜欢的座右铭:全神贯注的上吧!!!
😊作者简介:一名热爱C/C++,算法等技术、喜爱运动、热爱K歌、敢于追梦的小博主!
😘博主小留言:哈喽!😄各位CSDN的uu们,我是你的博客好友小梦,希望我的文章可以给您带来一定的帮助,话不多说,文章推上!欢迎大家在评论区唠嗑指正,觉得好的话别忘了一键三连哦!😘
前言🙌
哈喽各位友友们😊,我今天又学到了很多有趣的知识,现在迫不及待的想和大家分享一下!😘我仅已此文,和大家分享【C语言蓝桥杯每日一题】——跑步锻炼~ 都是精华内容,可不要错过哟!!!😍😍😍
排序🙌
解题思路分析: 😍
- 首先,先认真阅读题目,然后整理思路。
- 当到周一和每月1号时,小蓝要跑2千米;平时每天跑1千米。也就是周一和每月1号比平时多跑1千米。
- 为了更好的对应月份,我们创建数组元素个数为13的整形数组来存放一年中各个月的天数。首元素用0补上就行。
- 创建一个day数组,表示的每一周。因为是从周6开始遍历的,所以day数组也跟着设置。
- 注意2月份天数的判断。闰年2月是29天,平年2月是28天。
- 然后循环遍历,当符合周一和每月1号这个条件时,就让sum++执行两次,其他情况执行一次sum++。
- 当遍历来到了2020年10月1日时,则终止我们的遍历,并将sum值打印出来,这就是我们这道题的答案!
解题源码分享: 😍
#include<stdio.h>
int main()
{
int year = 0;
int month[13] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };
int day[7] = { 6,7,1,2,3,4,5 };
int i = 0;
int j = 0;
int sum = 0;
for (year = 2000; year <= 2020; year++)
{
//闰年2月 - 29天 ;平年2月 - 28天
if ((year % 4 == 0) && (year % 100 != 0) || (year % 400 == 0))
month[2] = 29;
else
month[2] = 28;
int k = 0;
for (k = 1; k <= 12; k++)
{
for (i = 1; i <= month[k];i++)
{
//周一和每月1号,小蓝都要跑2千米,其实就是比平时多跑1千米
if (day[j % 7] == 1 || i == 1)
{
sum++;
}
//平时就执行一次sum++,周一和每月一号执行两次sum++
sum++;
j++;
if (year == 2020 && k == 10 && i == 1)
{
printf("%d", sum);
return 0;
}
}
}
}
}
程序输出结果验证: 😊
总结撒花💞
本篇文章旨在分享【【C语言蓝桥杯每日一题】——跑步锻炼。希望大家通过阅读此文有所收获!😘如果我写的有什么不好之处,请在文章下方给出你宝贵的意见😊。如果觉得我写的好的话请点个赞赞和关注哦~😘😘😘