结构体\年月日

简介: 结构体\年月日

注意:C语言里面是没有bool(布尔)类型的

我这里用的是vs2010里的.cpp

typedef的用法:

typedef struct 函数原名(可以不加)

{

。。。。。

}定义后的名字(必须要写);

>>>>>>之后就可以直接使用定义后的名字了

#include<stdio.h>
#include<stdlib.h>
 
//定义结构体
typedef struct date
{
  int month;
  int day;
  int year;
}d;
 
//函数声明
bool isleap(struct date d);
int numberofdays(struct date d);
 
int main()
{
  struct date today,tomorrow;
 
  //输入
  printf("请输入今天的日期(yyyy,dd,mm):");
  scanf("%i,%i,%i",&today.year,&today.month,&today.day);
 
  //判断并对年月日加以修改
  if(today.day!=numberofdays(today))
  {
    tomorrow.day=today.day+1;
    tomorrow.month=today.month;
    tomorrow.year=today.year;
  }
  else if(today.month==12)
  {
    tomorrow.day=1;
    tomorrow.month=1;
    tomorrow.year=today.year+1;
  }
  else
  {
    tomorrow.day=1;
    tomorrow.month=today.month+1;
    tomorrow.year=today.year;
  }
 
  //输出
  printf("明天的日期为%i-%i-%i\n",
    tomorrow.year,tomorrow.month,tomorrow.day);
 
  system("pause");
  return 0;
}
 
//函数定义
bool isleap(struct date d)
{
  bool leap=false;
  if((d.year%3==0 && d.year%100!=0) || d.year%400==0)
    leap=true;
  return leap;
}
 
int numberofdays(struct date d)
{
  int days;
  const int dayspermonth[12]={31,28,31,30,31,30,31,31,30,31,30,31};
  if(d.month==2 && isleap(d))
    days=29;
  else
    days=dayspermonth[d.month-1];
  return days;
}


目录
相关文章
|
24天前
|
SQL 关系型数据库 MySQL
【Databand】日期时间函数
【Databand】日期时间函数
14 1
|
1月前
|
前端开发 索引
前端获取当前日期---------------年月日//时分秒
前端获取当前日期---------------年月日//时分秒
30 0
|
1月前
|
存储 Serverless C语言
每天一道C语言编程(结构体的运用):这是一年的第几天?
每天一道C语言编程(结构体的运用):这是一年的第几天?
13 0
|
1月前
|
存储 C++
[C++]日期类的实现
[C++]日期类的实现
44 0
|
1月前
|
Java C++ Python
日期类的实现
日期类的实现
38 0
|
9月前
结构体-定义日期结构体类型(包括年、月、日),实现输
结构体-定义日期结构体类型(包括年、月、日),实现输
267 0
|
11月前
|
前端开发 数据格式
前端实现年月日时分秒的转换
前端实现年月日时分秒的转换
121 0
【C++】日期类实现
日期类介绍 日期类Date,包括年、月、日等私有数据成员。要求实现日期的基本运算,两个日期的比较,日期加减天数,日期自增和自减,日期减日期等(使用运算符重载)
timeval 转换为年月日
timeval 转换为年月日
143 0
timeval 转换为年月日