第一范文网 - 专业文章范例文档资料分享平台

C语言课程设计--万年历

来源:用户分享 时间:2025/5/30 7:42:53 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

d. 输入参数(修改)

e. 输入修改内容

f. 修改成功

g. 输入参数(删除)

h. 确认删除后

3. 最后测试一组大于一万年的日期:999999年

- 14 -

9月9日.测试功能:添加功能、全部删除功能。 a. 输入参数

b. 输入备忘

c. 添加成功

d. 输入参数(删除全部)

- 15 -

e. 确认删除后

至此,数据测试完毕。所有的测试结果均与实际符合得很好,验证了该程序的正确性。

5 总结

1 算法与程序总结

本程序定义了结构体类型,将年月日和备忘联系起来,在写入和读取的过程中均作为一个整体,并且在将写入的内容始终写在文件的末尾,而不是定义一一对应的备忘数组,节省了时间和空间。 由于课题要求使用命令行参数,所以,没有使用菜单来实现功能,而是使用命令选项来选择所需要执行的功能。而由于使用了命令行参数,因此该程序必须在DOS环境下运行(命令提示行)。 万年历部分,采用定基点求相差的天数取7的余来确定当月首日是星期几,从而得到所需要的

- 16 -

日历。

2 改进方案

我们

附录

以下为我们小组该课题的最终代码: /*-------------------------------我是分割-------------------------------*/ /*命令行功能选项*/

/*-d:显示当月日历和当日备忘*/ /*-i:显示当月日历和添加当日备忘*/ /*-m:显示当月日历和修改当日备忘*/ /*-g:删除当日备忘*/ /*-t:删除全部备忘*/

/*-------------------------------我是分割-------------------------------*/ /*头文件*/ #include #include

- 17 -

线线

#include

#include /*调用getopt函数*/ /*-------------------------------我是分割线-------------------------------*/

/*定义全局变量(各月所含天数)*/ int a[]={0,31,0,31,30,31,30,31,31,30,31,30,31}; /*定义全局变量(已获取的备忘个数)*/ int count_memo; /*定义结构体*/ struct date_message {

int year; /*年*/ int month; /*月*/ int day; /*日*/ char memo[300]; /*备忘*/ }date={1,1,1,\

/*-------------------------------我是分割线-------------------------------*/ /*主函数*/

int main(int argc,char *argv[]) {

- 18 -

搜索更多关于: C语言课程设计--万年历 的文档
C语言课程设计--万年历.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c72tjg4wx7j75cln2z0an3ef8l940h6007s7_4.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top