王更生课程设计模板信息工程12C++Word文档格式.docx
- 文档编号:19140074
- 上传时间:2023-01-04
- 格式:DOCX
- 页数:24
- 大小:66.97KB
王更生课程设计模板信息工程12C++Word文档格式.docx
《王更生课程设计模板信息工程12C++Word文档格式.docx》由会员分享,可在线阅读,更多相关《王更生课程设计模板信息工程12C++Word文档格式.docx(24页珍藏版)》请在冰豆网上搜索。
2011年12月30日
目 录
一、设计思路
二、功能实现详细设计
三、测试结果分析
四、用户手册
五、设计体会
编译C程序:
主要应用函数调用,循环语句,死循环进行编译。
在编译之后要进行调试
#include<
stdio.h>
stdlib.h>
voidmonth_day()//这个函数用来判断这年的月分有多少天的
{
intyear,month;
printf("
请输入年月(xxxx,x)"
);
scanf("
%d,%d"
&
year,&
month);
intmon_day[]={31,28,31,30,31,30,31,31,30,31,30,31};
if((year%4==0&
&
year%100!
=0)||year%400==0&
month==2)/*判断是判断是否是闰年,如果是闰年而且这个月是2月那这个月有29天*/
这一天有29天"
else
这一天有%d天"
mon_day[month-1]);
}
voidsearch_lunar(intday)
{
inty=12,nl=7;
nl=nl+day;
if(nl>
29)
{
y=1;
nl=nl-29;
}
printf("
\t2012年1月%d日是农历"
day);
switch(y)
case1:
一月"
break;
case12:
十二月"
switch(nl)
初一"
case2:
初二"
case3:
初三"
case4:
初四"
case5:
初五"
case6:
初六"
case7:
初七"
case8:
初八"
case9:
初九"
case10:
初十"
case11:
十一"
十二"
case13:
十三"
case14:
十四"
case15:
十五"
case16:
十六"
case17:
十七"
case18:
十八"
case19:
十九"
case20:
二十"
case21:
廿一"
case22:
廿二"
case23:
廿三"
case24:
廿四"
case25:
廿五"
case26:
廿六"
case27:
廿七"
case28:
廿八"
case29:
廿九"
case30:
三十"
}
voidfind_lunar()
intday;
charch;
\t您正在查询2012年1月农历!
!
\n"
\t请输入您要查询的日期(day):
"
scanf("
%d"
day);
while((day<
1)||(day>
31))
printf("
\n\t\a\a输入错误!
请重新输入!
\t请输入您要查询的日期:
scanf("
search_lunar(day);
\t是否继续查询?
(y/n)"
ch=getchar();
while(!
(ch=='
n'
||ch=='
N'
y'
Y'
))
printf("
\n\t\a\a输入错误!
是否继续查询?
scanf("
%c"
ch);
if((ch=='
)||(ch=='
find_lunar();
voidshengxiao(intyear)
intp;
if(year>
=1960)
p=(year-1960)%12+1;
else
p=12-(1960-year)%12;
switch(p)
case1:
这一年是鼠年"
case2:
这一年是牛年"
case3:
这一年是虎年"
case4:
这一年是兔年"
case5:
这一年是龙年"
case6:
这一年是蛇年"
case7:
这一年是马年"
case8:
这一年是羊年"
case9:
这一年是猴年"
case10:
这一年是鸡年"
case11:
这一年是狗年"
case12:
这一年是猪年"
voidsearshengxiao()
intyear;
请输入年份"
year);
shengxiao(year);
searshengxiao();
intcalculatespace(intyear)
intk,s=0;
2000)
for(k=2000;
k<
year;
k++)
if(k%4==0)s=s+366;
elses=s+365;
return((s+6)%7);
elseif(year==2000)return(6);
for(k=year;
2000;
if(k%4==0)s=s+366;
return(7-(s+1)%7);
voidrunnian()
请输入年份(xxx)\n"
if((year%4==0&
=0)||year%400==0)
%d是闰年"
year);
%d不是闰年"
voidshow_simple_calendar()
inti,j,k,n,space,year;
inta[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}};
\n\t现在使用的是简单的日历程序!
\n\t请从键盘输入年份:
"
getchar();
space=calculatespace(year);
if(((year%4==0&
=0)||year%400==0))k=1;
elsek=0;
\n\n\t\t\t\t日历的年份为:
%d\n"
for(i=0;
i<
12;
i++)
\n\n\t\t\t\t月份:
%d\n"
i+1);
\n\t星期日星期一星期二星期三星期四星期五星期六\n\n"
for(n=0;
n<
space+1;
n++)
\t"
for(j=1;
j<
=a[k][i];
j++)
{
%8d"
j);
if((space+j)%7==0)
printf("
\n\t"
}
space=(space+a[k][i])%7;
voidsimple_calendar()
do
show_simple_calendar();
\n\n\t\t是否要查看其它年份的日历?
?
(y/n)"
ch=getchar();
while(!
\n\t\t\a\a输入错误!
是否要查看其它年份的日历?
}while(ch=='
voidquit()
\n\t谢谢使用日历程序!
exit(0);
intSelectMenu()
intchoice;
\n\t******************************************************************\n"
\n5:
计算某一年的生肖\n"
\n4:
判断某一年是否为闰年\n"
\n3:
计算某一月的天数\n"
\n2:
查看2012年1月份对应的农历\n"
1:
简单的日历程序!
0:
退出!
\t******************************************************************\n"
\t请选择菜单号(0---5):
while((!
(scanf("
choice)))||(choice<
0)||(choice>
5))
\n\t\t\a\a选择错误!
请重新选择:
returnchoice;
voidHandleMenu()
\t\t*****************欢迎使用日历程序***************\n"
while
(1)
switch(SelectMenu())
case0:
quit();
break;
case1:
simple_calendar();
case2:
find_lunar();
case3:
month_day();
case4:
runnian();
break;
case5:
searshengxiao();
voidmain()
HandleMenu();
“
程序的名称:
简单的日历程序
程序的主要功能:
一,打印某一年的日历。
二,判断某一年是否为闰年。
三,查询2012年一月份对应的农历。
四,四查询某一年的生肖。
按照提示,例如输入“1988”,就会得到结果。
五,查询某一月的天数。
例如输入“1995,2”就可以得到结果。
程序运行时可以根据提示操作,便可以实现相应的功能。
例如:
我要查看1990年的生肖,选择功能5。
按ENTER键,则出现“请输入年份(XXX)”,输入“1990”,按ENTER键,则出现“这一年是马年”。
在涉及这个程序时,要考虑的因素很多。
首先要有一个整体的框架,然后设计各个功能,而每一个功能又是由几个函数组成,从而在编译的初始阶段是对一个一个函数进行编译。
而每一个函数体又需要许多知识,有的需要循环结构,有的需要SWITCH语句等。
每一个字母出错就有可能影响功能的实现,总之细节决定成败。
程序做完之后最重要的一点就是上机进行调试,在调试的过程中不可避免会有一些错误出现,这时要静下心来仔细观察,逐个排查错误。
比如说有一次我应用SCANF语句,没有加一个与号导致程序出错,我检查了好几遍,没有找出错误,这时我心急了。
而老师很快帮我找出了错误。
在这个时候必须有一个沉稳的心态,才能快速找出错误。
不管做什么都需要刻苦,没有什么突出的成果可以轻松得到,想要自己的成果与众不同,就要比别人付出更多。
在这设计过程中,我不断地探索,尝试不同的方法,才完成几个功能,我也充分利用网络资源,查看别人的设计思路,从而得到启发,激发我的设计灵感,最中成功完成这一设计。
我得到的最重要的一句话是:
想要得到,就要去尝试。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 更生 课程设计 模板 信息 工程 12 C+