C++ 已知两个时间(年月日)求日期差

#include<iostream>
#include <ctime>  

using namespace std;  

int main() {
    struct tm t1 = { 0 };
    struct tm t2 = { 0 };
    double seconds;  

    t1.tm_year = 2019 - 1900; t1.tm_mon = 6; t1.tm_mday = 6;//现在时间2019,7,6
    t2.tm_year = 2020 - 1900; t2.tm_mon = 5; t2.tm_mday = 7;//明年高考时间2020,6,7  

    seconds = difftime(mktime(&t2), mktime(&t1));//转换结构体为time_t,利用difftime,计算时间差  

    cout << "剩余天数: " << seconds / 86400 << endl;//最后输出时间,因为一天有86400秒(60*60*24)
    return 0;
}

输出:

剩余天数: 337

  

转载:https://www.cnblogs.com/chechen/p/11143542.html

原文地址:https://www.cnblogs.com/xinhua219/p/12297881.html

时间: 2024-11-05 20:35:07

C++ 已知两个时间(年月日)求日期差的相关文章

[数学]已知两个向量,求夹角

// 给出了坐标//先求出两个向量的模//再求出两个向量的向量积//|a|=√[x1^2+y1^2]//|b|=√[x2^2+y2^2]//a*b=(x1,y1)(x2,y2)=x1x2+y1y2搜索////cos<a,b>=a*b/[|a|*|b|]// =(x1x2+y1y2)/[√[x1^2+y1^2]*√[x2^2+y2^2]] Real a = sqrt((start.x * start.x) + (start.y * start.y)); Real b = sqrt((end.x

数据结构——已知先序中序求后序,已知中序后序求先序

总结下二叉树的已知两种遍历方式求第三种遍历顺序的方法,已知先序和中序遍历或者后序与中序遍历后二叉树是唯一确定的,下面介绍怎么求出第三种遍历顺序. 先序遍历顺序为:根结点——左子结点——右子结点,中序遍历为:左子结点——根结点——右子结点,我们注意到,先序遍历的第一个元素就是二叉树根结点,我们在中序遍历中以该元素分为左右两部分,则左边为左子树,右边为右子树,递归即可还原二叉树,这个过程中可直接输出后序遍历的顺序.同理,可以用后序与中序还原出先序遍历的顺序. 代码及测试数据如下: 1 #includ

(hdu 简单题 128道)hdu 1194 Beat the Spread!(已知两个数的和u两个数的差求这两个数)

题目: Beat the Spread! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 5169    Accepted Submission(s): 2692 Problem Description Superbowl Sunday is nearly here. In order to pass the time waiting f

已知IP、子网掩码,求网络位、主机位、广播地址

前       言 本文档是简单介了逻辑算法.以及如何在已知IP地址和子网掩码的情况下计算网络位.主机位以及广播地址.所有步骤远的采用最原始的二进制方式,直击原理,请仔细阅读. 1.逻辑算法 在计算网络位.主机地址.广播地址时,会使用到逻辑与运算和逻辑或运算,所以了解其算法是必要的.详细章节请百度,这里只做简单介绍. &&是逻辑与运算符,|| 是逻辑或运算符 逻辑与运算:当两个二进制数1和0做逻辑与运算时,全为真(1)即结果为真(1),一个为假即全为假(0) 逻辑或运算:当两个二进制数1和

已知两个整数a,b,且a+b=c,要求输入:a,b; 输出:c

题目: 已知两个整数a,b,且a+b=c,要求输入:a,b: 输出:c . 提示:使用赋值语句. 代码: 1 program shen2; 2 3 var 4 a,b,c:integer; 5 BEGIN 6 readln(a,b); 7 c:=a+b; 8 writeln(a,'+',b,'=',c); 9 END.

编程题:指针变量,实参与形参的引用。已知一个一维数组,求其中前n个数的和。n由键盘输入。

#include<stdio.h> int sum(int *q,int n) { int i,s=0; for(i=0;i<n;i++,q++) s+=*q; return s; } void main() { int num,a[10]={1,2,3,4,5,6,7,8,9,10}; int *p=a; scanf("%d",&num); printf("%d\n",sum(p,num)); } 编程题:指针变量,实参与形参的引用.已知

编程题:已知一个一维数组,求其中前n个数的和。n由键盘输入

#include<stdio.h> int sum(int array[],int n) { int i,s=0; for(i=0;i<n;i++) s+=array[i]; return s; } void main() { int num,a[10]={1,2,3,4,5,6,7,8,9,10}; scanf("%d",&num); printf("%d\n",sum(a,num)); } 编程题:已知一个一维数组,求其中前n个数的和.

59.已知xxz+yzz=532,求所有可能的x,y,z的值

#include<iostream> using namespace std; int main() { for(int x=0;x<10;x++) { for(int y=0;y<10;y++) { for(int z=0;z<10;z++) { if((110*x+100*y+12*z)==532) { cout<<"x="<<x<<" "; cout<<"y="&

Scala实现:已知三点坐标,求最短距离(如果在垂足不在线段内,最短距离为到其中一点的直线距离)

/** * 已知三点坐标,求其中一点到另两点的垂线距离 * (如果在垂足不在线段内,最短距离为到其中一点的直线距离) * Created by wzq on 17-11-2. */object Point2lineDistance { def main(args: Array[String]) { val v: Double = pointToLine(-3, 0, 3, 0, 0, 3) System.out.println(v) } def pointToLine(x1: Int, y1: