结课作业之 学生成绩管理系统

本文介绍了一个使用Matlab编写的简易学生成绩管理系统。该系统可以录入任意数量的学生及成绩,并能按平均分降序排列展示所有学生的成绩详情。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一直想写,总是没抽到时间,今天终于完成了,哈哈哈。。。

可实现n个学生m门成绩录入,并且降序排列。


%信息录入,可实现n门成绩和m个学生
student = struct('Name', '', 'No', '', 'Cirr','','Scores','','Ave','' );%构造结构体
n = input('Please input students number : '); %'对应的人数'

for i= 1:n
    student(i).Name = input('Name: '); 
    student(i).No = input('No: ');
    student(i).Cirr = input('Cirr: ');
    student(i).Scores = input('Scores: ');
    student(i).Ave = mean(student(i).Scores);
end

%成绩排序

for ii=1:length(student)-1
    for jj=ii+1: length(student)
        if(student(jj).Ave > student(ii).Ave)
            temp = student(jj);
            student(jj) = student(ii);
            student(ii) = temp;
        end
    end
end

disp(['Name',blanks(6),'No',blanks(6),'Cirr',blanks(6),'Scores',blanks(6),'Ave',blanks(6)] );

for k=1:n
    disp([student(k).Name ,blanks(9),num2str(student(k).No),blanks(6), student(k).Cirr, blanks(5), num2str(student(k).Scores), blanks(5),num2str(student(k).Ave) ]);
end %注意matlab要合理利用矩阵,比如这个disp的参数就是个大矩阵。
%注意disp只能显示字符串,要把数字进行转换.

测试

>> test
Please input students number : 2
Name: 'a'
No: 1
Cirr: ['c ' 'm ' 'e ']
Scores: [1 2 3 ]
Name: 'b'
No: 2
Cirr: ['c ' 'm ' 'e ']
Scores: [1 2 4]
Name      No      Cirr      Scores      Ave      
b         2      c m e      1  2  4     2.3333
a         1      c m e      1  2  3     2
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ReCclay

如果觉得不错,不妨请我喝杯咖啡

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值