C语言大作业封面模板.docx

上传人:b****7 文档编号:11389141 上传时间:2023-02-28 格式:DOCX 页数:22 大小:18.04KB
下载 相关 举报
C语言大作业封面模板.docx_第1页
第1页 / 共22页
C语言大作业封面模板.docx_第2页
第2页 / 共22页
C语言大作业封面模板.docx_第3页
第3页 / 共22页
C语言大作业封面模板.docx_第4页
第4页 / 共22页
C语言大作业封面模板.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

C语言大作业封面模板.docx

《C语言大作业封面模板.docx》由会员分享,可在线阅读,更多相关《C语言大作业封面模板.docx(22页珍藏版)》请在冰豆网上搜索。

C语言大作业封面模板.docx

C语言大作业封面模板

 

C语言大作业

班级:

10物理

学号:

2010061251

姓名:

崔文明

 

2013年6月20日

#include

#include

#include

#defineM3

typedefstructstudents

{charname[20];

charnum[15];

floatscore[M];

floataverage;

floattotal;

}MESSA;

MESSAstu[20];intS;

voidmenu(void);

voidchoose(void);

voidinput(void);

voidsavescore(void);

voidloadscore(void);

voidchoosec(void);

voidaverage(void);

voidtotal(void);

voidname(void);

voidnumber(void);

voidshow(void);

voidexcellent(void);

voidpassing(void);

voidpersonal(void);

voidExit();

voidmain()

{menu();

choose();

}

voidmenu(void)

{

system("CLS");

printf("\t*****************************\n");

printf("\t*欢迎使用这个成绩管理系统*\n");

printf("\t*****************************\n");

printf("\t\n");

printf("\t请输入学生的分数........请按.........1\n");

printf("\t搜索学生分数...........请按.........2\n");

printf("\t搜索学生的优秀通过率....请按.........3\n");

printf("\t搜索学生的通过状况......请按.........4\n");

printf("\t搜索个人各门成绩分数....请按.........5\n");

printf("\t退出....................请按.........6\n");

printf("\n\t请选择:

\n");

}

voidchoose(void)

{

intx,flag=0;

while(flag==0)

{

fflush(stdin);

scanf("%d",&x);

getchar();

switch(x)

{case1:

input();savescore();loadscore();menu();choose();flag=1;break;

case2:

choosec();flag=1;break;

case3:

excellent();flag=1;break;

case4:

passing();flag=1;break;

case5:

personal();flag=1;break;

case6:

Exit();flag=1;

default:

printf("\tSorry,yourchoosedoesn'texist!

pleasechooseagain!

\n");

}

}

}

voidinput(void)

{

intflag=1,j,i;chark;floatpp=0;

for(i=0;flag==1;i++)

{

printf("\t请输入第N.%hd个学生的成绩信息:

\n",i+1);

puts("姓名:

");

fflush(stdin);

gets(stu[i].name);

fflush(stdin);

puts("学号:

");

fflush(stdin);

gets(stu[i].num);

puts("\t分数:

\t语文\t数学\t英语");

for(j=0;j

scanf("%f",&stu[i].score[j]);

puts("\t你想要继续么?

(Y/N)");

while

(1)

{puts("\t请选择.......");

fflush(stdin);

scanf("%c",&k);

if(k!

='N'&&k!

='Y')

puts("\t出错了,哈哈,再输一次吧!

");

elseif(k=='N')

{

flag=0;S=i;break;

}

elsebreak;

}

}

for(i=0;i<=S;i++)

{

for(j=0,stu[i].total=0.0;j

stu[i].total+=stu[i].score[j];

stu[i].average=stu[i].total/M;

}

}

voidsavescore(void)

{

inti,flag=1;FILE*fp;charm;

puts("\t你想要保存这些数据么?

(Y/N)");

while

(1)

{

fflush(stdin);

scanf("%c",&m);

if(m=='Y')

{

if((fp=fopen("D:

\score.txt","w"))==NULL)

{

printf("\t对不起哦,无法打开这个表单....\n");

exit(0);

}

for(i=0;i<=S;i++)

if(fwrite(&stu[i],sizeof(structstudents),1,fp)!

=1)

{

puts("\t对不起,表单书写错误了!

");

flag=0;

}

if(flag==1)

for(i=0;i<=S;i++)

printf("\t好了,第N.%d个学生的数据已经被保存了哦!

!

!

\n",i+1);

fclose(fp);

break;

}

elseif(m!

='N'&&m!

='Y')

puts("\t对不起,你输入错误,请重新输入一次吧!

");

else

break;

}

}

voidloadscore(void)

{

FILE*fp;charn;MESSArestu[20];inti,j,flag=0;

charread[5][10]={"学号","姓名","语文","数学","英语"};

puts("\t你想要立刻读取这些数据么?

(Y/N)");

while

(1)

{

fflush(stdin);

scanf("%c",&n);

if(n=='Y')

{

if((fp=fopen("D:

\score.txt","r"))==NULL)

{

fprintf(stderr,"\tOpen%serror!

!

!

\n","score.txt");

exit(0);

}

for(i=0;i<=S;i++)

fread(&restu[i],sizeof(structstudents),1,fp);

system("CLS");

puts("\t成绩信息读取中.................");

printf("\n");

printf("\t$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$\n");

printf("\t$**$$**$\n\t");

printf("$**$");

for(i=0;i<5;i++)

printf("%-10s",read[i]);

printf("$**$");

printf("\n");

for(i=0;i<=S;i++)

{printf("\t$**$");

printf("%-10s%-10s",restu[i].num,restu[i].name);

for(j=0;j<3;j++)

printf("%-10.2f",restu[i].score[j]);

printf("$**$\n");

}

printf("\t$**$$**$");

printf("\n\t$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$\n");

fclose(fp);

break;

}

elseif(n=='N')

break;

else

printf("\t对不起,出现错误了,再来一次吧,相信你会成功的!

\n");

}

puts("\t输入任意键回到主菜单..............\n");

getchar();

getchar();

}

voidchoosec(void)

{

intbiao,i,flag=0;FILE*fp;

if((fp=fopen("D:

\\score.txt","r"))==NULL)

{

printf("\t对不起,你无法输入任何成绩信息!

无法打开这个表单!

\n\n\n");

printf("\t输入任意键回到主菜单!

!

\n");

getchar();

getchar();

menu();

choose();

}

for(i=0;i<=S;i++)

fread(&stu[i],sizeof(structstudents),1,fp);

fclose(fp);

system("CLS");

printf("\t以下是第二个菜单:

\n");

printf("\n");

printf("\t%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$\n");

printf("\t%%$按平均分由高到低.............请按...1%%$\n");

printf("\t%%$按总分由高到低...............请按...2%%$\n");

printf("\t%%$按学号降序...................请按...3%%$\n");

printf("\t%%$按姓名降序...................请按...4%%$\n");

printf("\t%%$回到主菜单...................请按...5%%$\n");

printf("\t%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$%%$\n");

printf("\n\t请选择输入方式:

\n");

while(flag==0)

{

fflush(stdin);

scanf("%d",&biao);

getchar();

switch(biao)

{case1:

flag=1;average();show();break;

case2:

flag=1;total();show();break;

case3:

flag=1;number();show();break;

case4:

flag=1;name();show();break;

case5:

flag=1;menu();choose();break;

default:

printf("\t对不起,你的操作无法进行!

请重新做出正确操作!

\n");

}

}

}

voidshow(void)

{

inti,j,n,flag=0;

charhead[7][10]={"学号","姓名","语文","数学","英语","总分","平均分"};

system("CLS");

puts("\t读取信息中.................");

printf("\n");

printf("\t$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$\n\n\t");

for(i=0;i<7;i++)

printf("%-10s",head[i]);

printf("\n\t");

for(i=0;i<=S;i++)

{

printf("%-10s%-10s",stu[i].num,stu[i].name);

for(j=0;j<3;j++)

printf("%-10.2f",stu[i].score[j]);

printf("%-10.2f",stu[i].total);

printf("%-10.2f",stu[i].average);

printf("\n\t");

}

printf("\n\t$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$**$\n");

printf("\nYouwant:

(1or2)\n");

puts("\t1.回到第二个菜单!

\n");

puts("\t2.回到主菜单!

\n");

while(flag==0)

{

fflush(stdin);

scanf("%d",&n);

getchar();

switch(n)

{case1:

flag=1;choosec();break;

case2:

flag=1;menu();choose();break;

default:

printf("\t出错了,请再次输入!

\n");

}

}

}

voidaverage(void)

{

inti,j,k;MESSAt;

for(i=0;i

{

k=i;

for(j=i+1;j<=S;j++)

if(stu[k].average

k=j;

if(k!

=i)

{

t=stu[k];

stu[k]=stu[i];

stu[i]=t;

}

}

}

voidtotal(void)

{

inti,j,k;MESSAt;

for(i=0;i

{

k=i;

for(j=i+1;j<=S;j++)

if(stu[k].total

k=j;

if(k!

=i)

{

t=stu[k];

stu[k]=stu[i];

stu[i]=t;

}

}

}

voidnumber(void)

{

inti,j,k;MESSAt;

for(i=0;i

{

k=i;

for(j=i+1;j<=S;j++)

if(strcmp(stu[k].num,stu[j].num)<0)

k=j;

if(k!

=i)

{

t=stu[k];

stu[k]=stu[i];

stu[i]=t;

}

}

}

voidname(void)

{

inti,j,k;MESSAt;

for(i=0;i

{

k=i;

for(j=i+1;j<=S;j++)

if(strcmp(stu[k].name,stu[j].name)<0)

k=j;

if(k!

=i)

{

t=stu[k];

stu[k]=stu[i];

stu[i]=t;

}

}

}

voidexcellent(void)

{

inti,j,k,w,flag=0;floatm;FILE*fp;

charhead2[3][10]={"数学","语文","英语"};

if((fp=fopen("D:

\\score.txt","r"))==NULL)

{

printf("\t对不起,你无法输入任何信息!

找不到该表单!

\n\n\n");

printf("\t输入任意键回到主菜单!

!

\n");

getchar();

getchar();

menu();

choose();

}

for(i=0;i<=S;i++)

fread(&stu[i],sizeof(structstudents),1,fp);

fclose(fp);

system("CLS");

for(i=0;i

{

printf("\tTheexcellentstudentsin%sisfollowing:

\n",head2[i]);

for(j=0,k=0;j<=S;j++)

if(stu[j].score[i]>=85.00)

{k++;

printf("\t%s\t%s",stu[j].num,stu[j].name);

printf("\t%.2f\n",stu[j].score[i]);

}

m=(k*1.0/(S+1))*100;

printf("\tTheexcellentrateis%.2f%%\n",m);

}

printf("\n\n");

puts("\t你想要继续操作么?

\n");

printf("\t1.离开系统!

\n");

printf("\t2.回到主菜单!

\n");

printf("\t3.回到第二个菜单!

\n");

puts("\t请选择:

\n");

while(flag==0)

{

fflush(stdin);

scanf("%d",&w);

getchar();

switch(w)

{case1:

Exit();flag=1;

case2:

menu();choose();flag=1;break;

case3:

choosec();flag=1;break;

default:

printf("\t对不起,操作无法进行!

请重新选择!

\n");

}

}

}

voidpassing(void)

{

inti,j,k,w,flag=0;floatm;FILE*fp;

charhead2[3][10]={"数学","语文","英语"};

if((fp=fopen("D:

\\score.txt","r"))==NULL)

{

printf("\t对不起,你不能输入任何信息!

无法找到该表单!

\n\n\n");

printf("\t输入任意键回到主菜单!

!

\n");

getchar();

getchar();

menu();

choose();

}

for(i=0;i<=S;i++)

fread(&stu[i],sizeof(structstudents),1,fp);

fclose(fp);

system("CLS");

for(i=0;i

{

printf("\tThepassingstudentsin%sisfollowing:

\n",head2[i]);

for(j=0,k=0;j<=S;j++)

if(stu[j].score[i]>=60.0)

{k++;

printf("\t%s\t%s",stu[j].num,stu[j].name);

printf("\t%.2f\n",stu[j].score[i]);

}

m=(k*1.0/(S+1))*100;

printf("\tThepassingrateis%.2f%%\n",m);

}

printf("\n\n");

puts("\t是否继续操作?

\n");

printf("\t1.离开系统!

\n");

printf("\t2.回到主菜单!

\n");

printf("\t3.回到第二个菜单!

\n");

puts("\t请选择:

\n");

while(flag==0)

{

fflush(stdin);

scanf("%d",&w);

getchar();

switch(w)

{case1:

Exit();flag=1;

case2:

menu();choose();flag=1;break;

case3:

choosec();flag=1;break;

default:

printf("\t对不起,你的操作无法进行!

请重新选择!

\n");

}

}

}

voidpersonal(void)

{

inti,j,f,w,flag=0;charb[10],a;FILE*fp;

charhead3[7][10]={"学号","姓名","语文","数学","英语","总分","平均分"};

if((fp=fopen("D:

\\score.txt","r"))==NULL)

{

printf("\t对不起,无法输入任何信息!

无法找到该表单!

\n\n\n");

printf("\t输入任意键回到主菜单!

!

\n");

getchar();

getchar();

menu();

choose();

}

for(i=0;i<=S;i++)

fread(&stu[i],sizeof(structstudents),1,fp);

fclose(fp);

puts("\t请输入你想要搜索的学生成绩信息:

\n");

puts("\t学生成绩信息如下.........\n");

for(i=0;i<=S;i++)

printf("\t%s",stu[i].name);

puts("\t\nYourchooseis

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1