news 2026/3/20 23:07:21

C++学习之旅【实战全面解析C++类和对象】

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C++学习之旅【实战全面解析C++类和对象】

🔥承渊政道:个人主页

❄️个人专栏:《C语言基础语法知识》 《数据结构与算法初阶》

《C++初阶知识内容》


✨逆境不吐心中苦,顺境不忘来时路!
🎬 博主简介:

引言:前篇文章,小编已经将我所学的C++类和对象的相关知识介绍完了,俗话说的好,温故知新,可以为师矣.那么本篇文章让我们通过做题全面解析C++类和对象,加深自己对知识的理解!废话不多说,带着这些疑问,下面跟着小编的节奏🎵一起学习吧!

目录

  • 1.选择题(全面解析)
  • 2.编程题(全面解析)
    • 2.1计算日期到天数转换
    • 2.2日期差值
    • 2.3打印日期
    • 2.4日期累加

1.选择题(全面解析)































2.编程题(全面解析)

2.1计算日期到天数转换

#include<iostream>usingnamespacestd;// 判断是否为闰年boolisLeap(intyear){// 闰年规则:能被4整除且不能被100整除,或能被400整除return(year%4==0&&year%100!=0)||(year%400==0);}intmain(){intyear,month,day;// 输入年、月、日(需确保输入为合法日期)cin>>year>>month>>day;intmonths[12]={31,28,31,30,31,30,31,31,30,31,30,31};// 闰年则修改2月天数为29if(isLeap(year)){months[1]=29;}// 累加前month-1个月的总天数inttotalDays=0;for(inti=0;i<month-1;++i){totalDays+=months[i];}totalDays+=day;// 输出结果cout<<totalDays<<endl;return0;}


2.2日期差值

#include<iostream>#include<string>#include<cmath>usingnamespacestd;// 判断闰年boolisLeap(intyear){return(year%4==0&&year%100!=0)||(year%400==0);}// 计算date(YYYYMMDD)对应的“当年第几天”intdateToDayOfYear(intdate){intyear=date/10000;intmonth=(date/100)%100;intday=date%100;intmonths[12]={31,28,31,30,31,30,31,31,30,31,30,31};if(isLeap(year)){months[1]=29;}inttotal=0;for(inti=0;i<month-1;++i){total+=months[i];}returntotal+day;}// 计算两个日期(YYYYMMDD)之间的天数差intdateDiff(intdate1,intdate2){// 确保date1 <= date2,方便计算if(date1>date2){swap(date1,date2);}intyear1=date1/10000;intyear2=date2/10000;intday1=dateToDayOfYear(date1);intday2=dateToDayOfYear(date2);inttotal=0;// 处理中间完整的年份for(inty=year1+1;y<year2;++y){total+=isLeap(y)?366:365;}// 处理year1剩余的天数 + year2已过的天数if(year1==year2){total=day2-day1+1;// 同一年,直接相减+1(如12到22是11天)}else{intdaysInYear1=isLeap(year1)?366:365;total+=(daysInYear1-day1+1)+day2;}returntotal;}intmain(){intdate1,date2;// 多组输入(直到输入结束)while(cin>>date1>>date2){cout<<dateDiff(date1,date2)<<endl;}return0;}


2.3打印日期

#include<iostream>usingnamespacestd;// 判断是否为闰年boolisLeap(intyear){return(year%4==0&&year%100!=0)||(year%400==0);}intmain(){inty,n;// 处理多组输入while(cin>>y>>n){// 平年各月天数(索引0对应1月)intmonths[]={31,28,31,30,31,30,31,31,30,31,30,31};// 闰年修改2月天数if(isLeap(y)){months[1]=29;}intmonth=1;// 推算月份和日期for(;month<=12;++month){if(n<=months[month-1]){break;}n-=months[month-1];}// 按yyyy-mm-dd格式输出(补前导零)printf("%04d-%02d-%02d\n",y,month,n);}return0;}


2.4日期累加

#include<iostream>usingnamespacestd;// 判断闰年boolisLeap(intyear){return(year%4==0&&year%100!=0)||(year%400==0);}// 获取指定年、月的天数intgetDays(intyear,intmonth){switch(month){case1:case3:case5:case7:case8:case10:case12:return31;case4:case6:case9:case11:return30;case2:returnisLeap(year)?29:28;default:return0;// 无效月份(实际不会触发)}}intmain(){intm;cin>>m;// 样例个数while(m--){inty,mon,d,add;cin>>y>>mon>>d>>add;d+=add;// 累加天数到“日”// 调整日期至合法范围while(true){intdays=getDays(y,mon);if(d<=days)break;// 日合法,退出循环d-=days;// 减去当月天数mon++;if(mon>12){// 月份超12,年份进位y++;mon=1;}}// 按格式输出printf("%04d-%02d-%02d\n",y,mon,d);}return0;}


敬请期待下一篇文章内容–>C++内存管理!


版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/14 18:12:39

基于Python+django的智能停车系统的设计与实现(源码+lw+部署文档+讲解等)

课题介绍本课题聚焦传统停车场管理效率低、车位利用率不足、车主找位难的痛点&#xff0c;开展基于PythonDjango的智能停车系统的设计与实现工作。系统以Python作为核心开发语言&#xff0c;依托Django框架搭建高效稳定的后端服务架构&#xff0c;负责处理车位状态监测、车辆进…

作者头像 李华
网站建设 2026/3/17 15:49:08

基于Python+Django的智能停车管理系统(源码+lw+部署文档+讲解等)

课题介绍本课题聚焦传统停车场管理效率低、车位利用率不足、车主找位难的痛点&#xff0c;设计并开发基于PythonDjango的智能停车管理系统。系统以Python作为核心开发语言&#xff0c;依托Django框架搭建高效稳定的后端服务架构&#xff0c;负责处理车位状态监测、车辆进出管理…

作者头像 李华
网站建设 2026/3/19 6:05:08

代码随想录 1971.寻找图中是否存在路径

方法一&#xff1a;并查集class Solution {private int[] p;public boolean validPath(int n, int[][] edges, int source, int destination) {p new int[n];for(int i 0;i < n;i){p[i] i;}for(int[] e : edges){p[find(e[0])] find(e[1]);}return find(source) find(d…

作者头像 李华
网站建设 2026/3/15 11:09:53

告别等待:CentOS 7.6镜像极速下载方案

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 设计一个CentOS 7.6镜像加速下载工具。利用多线程、CDN优选和P2P技术提升下载速度。自动选择最快的镜像站点&#xff0c;支持断点续传。包含速度测试功能&#xff0c;可实时显示下载…

作者头像 李华