瞎折腾


私信TA

用户名:chenbin

访问量:63720

签 名:

等  级
排  名 75
经  验 10035
参赛次数 0
文章发表 74
年  龄 0
在职情况 学生
学  校 中南大学
专  业

  自我简介:

解题思路:

1.首先按照题目要求定义一个结构体,如代码所示,Days为结构体类型,在main函数中定义的dd就是结构体变量名,它包含三个属性int year,int mon和int day;

2.因为每个月的天数都不相同,于是定义一个数组m[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};此处为保证对应的数组下标能够对应实际月份,设计数组大小为13,令m[0]=0即可;

3.判断dd.year是否是闰年语句:if((dd.year%4) && !(dd.year%100) || !(dd.year%400)),如果是闰年就令m[2]=29;
4.计算天数:首先计算dd.mon的天数(利用循环实现),然后再计算当月具体第几天dd.day的值

注意事项:

1.在main函数体中输入对应的dd.year,dd.mon和dd.day,要注意'dd.'不能省略!
2.要知道如何判断闰年



参考代码:

#include<stdio.h>

typedef struct 

{

int year;

int mon;

int day;

}Days;


int main()

{

Days dd;

int i,count=0;

int m[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};

scanf("%d %d %d",&dd.year,&dd.mon,&dd.day);

if((dd.year%4) && !(dd.year%100) || !(dd.year%400))

{

m[2]=29;

}

for(i=0;i<dd.mon;i++)

{

count+=m[i];

}

count+=dd.day;

printf("%d\n",count);

return 0;

}


 

0.0分

9 人评分

新上线《蓝桥杯辅导》课程,近五年的蓝桥杯省赛与国赛真题都有,从读题开始理解题意、梳理思路、实现代码再提交评测全过程,可有效提升获奖比例甚至进国赛!课程介绍、试听请猛击这里

  评论区

  • «
  • »