求一年中的天数

本文介绍了如何在C语言中使用结构体定义变量并实现闰年天数计算的实验,涉及结构体变量的定义、结构体数组和指针的应用,以及如何根据闰年规则计算特定日期是当年的第几天。
摘要由CSDN通过智能技术生成

实验八 结构体与其他构造类型

一、实验目的

  1. 掌握结构体变量的定义和引用。
  2. 掌握结构体数组和结构体指针的使用。
  3. 培养使用结构体解决实际问题的能力。

二、实验内容

1、编写程序,在主函数中输入年月日,利用days函数计算该天是本年中的第几天。定义一个结构体变量(包括年、月、日)。

提示:声明结构体类型struct y_m_d,成员为year、month、day。根据题目,需要考虑闰年的情况,

判断闰年的条件为year%4==0 && year%100!=0 || year%400==0。

函数接口定义:

在这里描述函数接口。例如:
int days(int year,int month,int day); 

输入样例:

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

2020 3 1

输出样例:

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

61

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

栈限制

8192 KB

#include<stdio.h>
int days(int year,int month,int day); 
int main()
{
    int a,b,c,n;
    scanf("%d %d %d",&a,&b,&c);
    n=days(a,b,c);
    printf("%d\n",n);
    return 0;
}
int days(int year,int month,int day)
{
    int sum,leap;
    switch(month) 
  {
    case 1:sum=0;break;
    case 2:sum=31;break;
    case 3:sum=59;break;
    case 4:sum=90;break;
    case 5:sum=120;break;
    case 6:sum=151;break;
    case 7:sum=181;break;
    case 8:sum=212;break;
    case 9:sum=243;break;
    case 10:sum=273;break;
    case 11:sum=304;break;
    case 12:sum=334;break;
    default:printf("data error");break;
  }
     sum=sum+day;
  if(year%400==0||(year%4==0&&year%100!=0))
    leap=1;
  else
    leap=0;
  if(leap==1&&month>2)
    sum++;
    return sum;
}

  • 23
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值