《C语言》课程设计报告Word格式文档下载.docx
《《C语言》课程设计报告Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《《C语言》课程设计报告Word格式文档下载.docx(10页珍藏版)》请在冰豆网上搜索。
日常生活中离不开年历。
编写程序要求当用户输入年份时能输出该年的日历,在日历上能够看出某天是星期几,可以显示任意一年任意一天,并能够知道是否是闰年等。
二、设计思路
大赛评分:
此程序分为给各选手评分,打分和给各位选手的最后得分进行排序两个部分。
首先第一部分先输入评委和选手的得分,先利用for循环求出各选手的总分,然后利用判断函数去掉一个最高分和一个最低分得出最后选手的平均分,接着第二部分利用冒泡法排除各选手的名次,最后结束此次大赛。
万年历:
此程序具有输入一个年份,可以知道整年的日历,并能知道此年是否为闰年的功能。
年历的输出要确定当年第一天为星期几,所以将之前所有年的天数加起来,然后除以七取余,就可以得到。
由于求之前所以年份的累加和,需要判断每一年是否为闰年。
就要设计求闰年的代码。
调用函数将之前所以年份的累加,用和来判断每一年是否为闰年。
定义一个二维数组来存放每一个月的月历。
先将其全部赋值为零,然后用循环结构将天数存入。
输出月历时,将为零的输出空格。
这样年历就设计完成了。
三、设计代码及运行结果
#include<
stdio.h>
math.h>
voidmain()
{
inti,j,n,m,c,a[100];
floatmax,min,t,b[100],f[100][20];
printf("
请输入选手的个数(1<
=n<
=100):
"
);
scanf("
%d"
&
n);
请输入评委的个数(4<
=m<
=20):
m);
\n请各位评委在0到10之间打分"
for(i=1;
i<
=n;
i++)
{
\n第%d个出场选手得分:
\n\n"
i);
b[i]=0;
max=0;
min=210;
for(j=1;
j<
=m;
j++)
{
第%d个评委的评分为:
j);
%f"
f[i][j]);
while(f[i][j]<
0||f[i][j]>
10)
{printf("
第%d个评委输入的数据错误,请重新输入:
\n"
scanf("
}
b[i]+=f[i][j];
if(max<
f[i][j])max=f[i][j];
if(min>
f[i][j])min=f[i][j];
}
\n去掉一个最高分:
%.2f"
max);
\n去掉一个最低分:
min);
b[i]=(b[i]-max-min)/(m-2);
\n编号为%d号选手"
最后得分为:
%.2f\n"
b[i]);
}
a[j]=j;
if(b[j]<
b[j+1])
{
t=b[j];
b[j]=b[j+1];
b[j+1]=t;
c=a[j];
a[j]=a[j+1];
a[j+1]=c;
}
\n参赛选手得分名次表:
\n选手编号得分名次"
for(i=1,j=1;
=n
;
i++,j++)
\n%d%.2f%d"
a[j],b[i],i);
\n\n大赛评分结束,谢谢!
}
万年历:
#include<
{
longintt(int);
intd(intyear);
inti,j,day,year,m,n,l,
a[13],b[6][7];
inta1[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
inta2[]={0,31,29,31,30,31,30,31,31,30,31,30,31};
longintc;
请输入年份:
"
if(d(year))
{
=12;
i++)
a[i]=a2[i];
else
for(i=1;
a[i]=a1[i];
year);
c=t(year);
for(m=1;
m<
m++)
for(i=0;
6;
for(j=0;
7;
b[i][j]=0;
switch(m)
case1:
\t一月%d\n"
year);
break;
case2:
\t二月%d\n"
case3:
\t三月%d\n"
case4:
\t四月%d\n"
case5:
\t五月%d\n"
case6:
\t六月%d\n"
case7:
\t七月%d\n"
case8:
\t八月%d\n"
case9:
\t九月%d\n"
case10:
\t十月%d\n"
case11:
\t十一月%d\n"
case12:
\t十二月%d\n"
日一二三四五六\n"
i=j=0;
for(n=0;
n<
(c%7);
n++)
b[0][j++]=0;
day=1;
while(day<
=a[m])
if(j%7==0)
j=0,i++;
b[i][j++]=day;
c++;
day++;
{if(b[i][j]!
=0)
%.2d"
b[i][j]);
l=d(year);
if(i==1)
printf("
闰年\n"
else
非闰年\n"
intd(intyear)
if((year%4==0)&
&
(year%100!
=0)||(year%400==0))
return1;
return0;
longintt(intyear)
ints=1,w=0;
while(s<
year)
if(d(s))
w++;
s++;
return366*w+365*(year-w);
四、设计体会
在这次课程设计过程中遇到了很多问题,发现很多知识都没有掌握好,这时我通过上网查询和向别人请教来解决一系列的问题,从而完成了这两个程序。
通过这次课程设计我知道了学习c语言的极大用处,并知道了基础是非常重要的,我们应从一开始就学好C语言,这样就会更好的编出程序来。