C语言学生成绩设计Word格式文档下载.docx

上传人:b****5 文档编号:16199823 上传时间:2022-11-21 格式:DOCX 页数:12 大小:15.91KB
下载 相关 举报
C语言学生成绩设计Word格式文档下载.docx_第1页
第1页 / 共12页
C语言学生成绩设计Word格式文档下载.docx_第2页
第2页 / 共12页
C语言学生成绩设计Word格式文档下载.docx_第3页
第3页 / 共12页
C语言学生成绩设计Word格式文档下载.docx_第4页
第4页 / 共12页
C语言学生成绩设计Word格式文档下载.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

C语言学生成绩设计Word格式文档下载.docx

《C语言学生成绩设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《C语言学生成绩设计Word格式文档下载.docx(12页珍藏版)》请在冰豆网上搜索。

C语言学生成绩设计Word格式文档下载.docx

charName[20];

floatMark1;

floatMark2;

floatMark3;

floatAverage;

};

/*声明学生数组及学生数量*/

structStudentstudents[1000];

intnum=0;

/*求平均值*/

floatAvg(structStudentstu)

return(stu.Mark1+stu.Mark2+stu.Mark3)/3;

}

/*通过学号返回数组下标*/

intStudent_SearchByIndex(charid[])

inti;

for(i=0;

i<

num;

i++)

{

if(strcmp(students[i].ID,id)==0)

returni;

}

return-1;

/*通过姓名返回数组下标*/

intStudent_SearchByName(charname[])

if(strcmp(students[i].Name,name)==0)

/*显示单条学生记录*/

voidStudent_DisplaySingle(intindex)

printf("

%10s%10s%8s%8s%8s%10s\n"

"

学号"

姓名"

成绩"

平均成绩"

);

-------------------------------------------------------------\n"

%10s%10s%8.2f%8.2f%8.2f%10.2f\n"

students[index].ID,students[index].Name,

students[index].Mark1,students[index].Mark2,students[index].Mark3,students[index].Average);

/*插入学生信息*/

voidStudent_Insert()

while

(1)

请输入学号:

"

scanf("

%s"

&

students[num].ID);

getchar();

请输入姓名:

students[num].Name);

请输入成绩:

%f"

students[num].Mark1);

students[num].Mark2);

students[num].Mark3);

students[num].Average=Avg(students[num]);

num++;

是否继续?

(y/n)"

if(getchar()=='

n'

break;

/*修改学生信息*/

voidStudent_Modify()

floatmark1,mark2,mark3;

charid[20];

intindex;

请输入要修改的学生的学号:

id);

index=Student_SearchByIndex(id);

if(index==-1)

学生不存在!

\n"

else

你要修改的学生信息为:

Student_DisplaySingle(index);

--请输入新值--\n"

students[index].ID);

students[index].Name);

students[index].Mark1);

students[index].Mark2);

students[index].Mark3);

students[index].Average=Avg(students[index]);

/*删除学生信息*/

voidStudent_Delete()

请输入要删除的学生的学号:

你要删除的学生信息为:

是否真的要删除?

y'

for(i=index;

num-1;

students[i]=students[i+1];

num--;

/*按姓名查询*/

voidStudent_Select()

charname[20];

请输入要查询的学生的姓名:

name);

index=Student_SearchByName(name);

你要查询的学生信息为:

/*按平均值排序*/

voidStudent_SortByAverage()

inti,j;

structStudenttmp;

for(j=1;

j<

num-i;

j++)

if(students[j-1].Average<

students[j].Average)

tmp=students[j-1];

students[j-1]=students[j];

students[j]=tmp;

/*显示学生信息*/

voidStudent_Display()

students[i].ID,students[i].Name,

students[i].Mark1,students[i].Mark2,students[i].Mark3,students[i].Average);

/*将学生信息从文件读出*/

voidIO_ReadInfo()

FILE*fp;

if((fp=fopen("

Database.txt"

rb"

))==NULL)

不能打开文件!

return;

if(fread(&

num,sizeof(int),1,fp)!

=1)

num=-1;

for(i=0;

fread(&

students[i],sizeof(structStudent),1,fp);

fclose(fp);

/*将学生信息写入文件*/

voidIO_WriteInfo()

wb"

if(fwrite(&

写入文件错误!

students[i],sizeof(structStudent),1,fp)!

}

/*主程序*/

main()

intchoice;

IO_ReadInfo();

/*主菜单*/

\n------学生成绩管理系统------\n"

1.增加学生记录\n"

2.修改学生记录\n"

3.删除学生记录\n"

4.按姓名查询学生记录\n"

5.按平均成绩排序\n"

6.退出\n"

请选择(1-6):

%d"

choice);

switch(choice)

case1:

Student_Insert();

case2:

Student_Modify();

case3:

Student_Delete();

case4:

Student_Select();

case5:

Student_SortByAverage();

Student_Display();

case6:

exit();

IO_WriteInfo();

}

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

当前位置:首页 > 党团工作 > 其它

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

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