您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 述职报告 > matlab实验(考试成绩排名)
编写一个学生成绩管理的函数程序:将学生成绩按五个等级划分:优秀(90以上),良好(80-90),中等(70-79),及格(60-69),不及格(60以下)对输入的学生成绩按五个等级划分并排序,打印学生姓名,得分,等级,并计算全班最高分、最低分、平均分。clearfori=1:10a{i}=89+i;b{i}=79+i;c{i}=69+i;d{i}=59+i;endc=[d,c];Name=input('pleaseinputname:');Score=input('pleaseinputscore:');n=length(Score);Rank=cell(1,n);%构建Rank大小S=struct('Name',Name,'Score',Score,'Rank',Rank);fori=1:nswitchS(i).Scorecase100S(i).Rank='满分';caseaS(i).Rank='优秀';casebS(i).Rank='良好';casecS(i).Rank='及格';casedS(i).Rank='及格';otherwiseS(i).Rank='不及格';endendfori=1:n%排序forj=i+1:nif(S(i).ScoreS(j).Score)temp=S(i);S(i)=S(j);S(j)=temp;endendenddisp(['学生姓名','得分','等级'])%排序完输出fori=1:ndisp([S(i).Name,blanks(10),num2str(S(i).Score),blanks(6),S(i).Rank]);ends=0;%求平均分fori=1:ns=S(i).Score+s;endaverscore=s/n;t=S(1).Score;%最高分fori=1:(n-1)if(tS(i+1).Score)t=S(i+1).Score;endendm=S(1).Score;%求最低分fori=1:(n-1)if(mS(i+1).Score)m=S(i+1).Score;endenddisp(['平均成绩:',num2str(averscore,6)]);disp(['最高分:',num2str(t)]);disp(['最低分:',num2str(m)]);运行结果:pleaseinputname:{'a','b','c','d','e'}pleaseinputscore:{10056127984}学生姓名得分等级a100满分e84良好d79及格b56不及格c12不及格平均成绩:66.2最高分:100最低分:12
本文标题:matlab实验(考试成绩排名)
链接地址:https://www.777doc.com/doc-4587573 .html