高级语言课程设计报告第三次报告: 日期的处理

简介: 高级语言课程设计报告实习题目第三次报告: 日期的处理l 阅读群文件《程序设计导引及在线实践》5章日期和时间处理之5.1-5.3。5.4选看。l 完成ACM俱乐部作业:2015cup实习3日期的处理l 描述你的算法,注释你的程序。

高级语言课程设计报告

实习题目

第三次报告: 日期的处理

l 阅读群文件《程序设计导引及在线实践》5章日期和时间处理之5.1-5.35.4选看。

l 完成ACM俱乐部作业:2015cup实习3日期的处理

l 描述你的算法,注释你的程序。

l 注意勿抄袭:全系统自动判定抄袭,一旦抄袭,0分。

一、实习目的:

二、针对你的每一道题目:

1.算法描述。

出生年份的日期分为三种:六月二号以后的;三月一日之后六月二号以前的;三月一日以前的。分别用不同的方法进行计算,但都是先算到2014年同一天的天数再进行加减。

2.你的代码及注释。

端午节:

#include <stdio.h>

int type(int );

int year[2]={365,366};                          //闰平年天数的区分

int month[2][12]={31,28,31,30,31,30,31,31,30,31,30,31,31,29,31,30,31,30,31,31,30,31,30,31}; //闰平年月份天数的区分

int main()

{

int days=0,week;

int i = 0, j = 0,a,b,c;

scanf("%d-%d-%d",&a,&b,&c);

if(b>6||(b==6&&c>=2)) //第一种:6.2~12.31

{

for(i=a;i<2014;i++)

days+=365+type(i+1); //算出到2014年这一天的天数

for(i=6;i<b;i++)

{days-=month[1][i];} //减去多出来的整月份天数

days=days+3-c;                           //减去多出来的日数

}

else

{

if(b>=3) //第二种:3.1~6.1

{

for(i=a;i<2014;i++)

days+=365+type(i+1); //与上同理

for(i=b+1;i<6;i++)

j+=month[0][i];

j=j+month[0][b]-c+2;

days-=j; //加上月份的天数减去日的天数

}

else //第三种:1.1~2.28(29)

{

for(i=a;i<2014;i++)

days+=365+type(i); //与上同理

for(i=b+1;i<6;i++)

j+=month[0][i];

j=j+month[0][b]-c+2; //与第二种同理,在这里区分了闰平年

days-=j;

}

}

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

printf("%d\n",7-(days-2)%7);

}

int type(int m) //区分闰平年的函数

{

if(m % 4 != 0 || (m % 100 == 0 && m % 400 != 0))

return 0;

else return 1;

}

 

 

高斯日记:(道理跟上面的完全相反)

#include<stdio.h>

int main()

{

    int a=8113,b,c,d,z=0,i=0,t,u,f;

    int month1[12]={31,29,31,30,31,30,31,31,30,31,30,31};

    int month2[12]={31,28,31,30,31,30,31,31,30,31,30,31};

    f=8113-31-30-31-31-30-31-30-31;

    b=f/365;

    t=b/4;

    u=b%4;

    if(u==3)

    f=f-1-t-b*365;

    else

    f=f-t-b*365;

    if(u==2)

    {

   

while(z<f){

    z=z+month1[i];

    i=i+1;

    };

    printf("%d-0%d-%d",1778+b,i,month1[i-1]-z+f-1);

    }

    if(u!=2)

    {

   

while(z<f){

    z=z+month2[i];

    i=i+1;

    };

    printf("%d-0%d-%d",1778+b,i,month2[i-1]-z+f-1);

    }   

return 0;

}

 

 

  1. 设计及调试过程遇到的问题及解决方案。

端午节:本以为可以直接套用上的代码,没想到跟书上是完全相反的,妄想可以挪用一点,但是最后还是都删了,还是自己编出来的。在第一部分的日期出了问题,经过连碰带猜终于把代码改对了,然后就是星期几那,竟然输出了0,这让我很是尴尬,但是都很轻松的解决了,基本没什么问题。

高斯日记:果真套上了代码,原来这是填空题,后来改正之后就没看,过了几天才又做完的,跟端午节的正相反,没啥了。

  1. 心得体会和自我对程序的评价。

端午节:感觉这个代码需要反过来思考,这样就能更方便的计算,正着算是很难的,不过也有另一种方法,跟我这种类似,不过是用六月二号算罢了,程序并不难,用心短时间就能编出来,虽然我盗用了书上代码的模板。自己的程序一般,不出彩,也很普通。Over

高斯日记:同上。

相关文章
|
4月前
|
人工智能 JavaScript 前端开发
转行做 IT 多数在 30 岁+、43%程序员每天一半时间不在编码,最新开发者生态系统现状报告发布!...
为了洞察开发者及其技术的最新趋势,行业中领头的 Java IDE IntelliJ IDEA、Kotlin 编程语言背后的软件工具开发公司 JetBrains 在调研了来自全球 26,348 位开发者后,最新发布了《2023 开发者生态系统现状》(https://www.jetbrains.com/zh-cn/lp/devecosystem-2023/)。
|
前端开发
实验:CSS+Div基础 - 预习报告
网页设计技术实验预习报告。
172 1
实验:CSS+Div基础 - 预习报告
|
存储 开发工具
我花了一个星期,做出了公司的管理系统,只需几个步骤!
我是企业的管理人员,公司发展到现阶段,感觉进入到了瓶颈期,每个员工的工作都已经饱和,很难再挤出时间做其它的事情,需要一款合适的管理软件来协作我们的工作。本来打算买一套管理软件就行了,现实却并没有那么简单。
我花了一个星期,做出了公司的管理系统,只需几个步骤!
|
Rust 安全 IDE
2021 Rust 调查结果公布:共 9354 份调查问卷收集
2021 Rust 调查结果公布:共 9354 份调查问卷收集
程序人生 - 九图带你全面读懂体检报告,超实用的阅读指南,马住!
程序人生 - 九图带你全面读懂体检报告,超实用的阅读指南,马住!
91 0
程序人生 - 九图带你全面读懂体检报告,超实用的阅读指南,马住!
|
测试技术 Python
生成Airtest报告总出错?这份总结收好了
生成Airtest报告总出错?这份总结收好了
331 0
如何写周报告
        在日常工作中,我们每个礼拜在项目上都会有周报需要编写提交,那么我们如何来写周报呢?到底该怎么才能写好周报?       首先我们得明确周报的概念,在周报中我们需要体现什么样的内容给领导。
1118 0
|
小程序 Java C#
计算机专业开题报告这么写,有效有用还能过
毕业论文题目怎样选?系统好不好弄?开题报告怎么写啊?啥也不会怎样办呢?系统运行不会?查重问题呀,要马上交开题报告了
计算机专业开题报告这么写,有效有用还能过