用MATLAB表示下表 1 为某专业学生的单科成绩登记表,现统计学生成绩的以下 信息:各分数段[0,60)、[60,70)、[70,80)、[80,90)、[90,100]的人数及 最高分、最低分、平均分。要求用循环结构实现,不使用 max、min、 mean 等函数来实现
时间: 2024-01-27 11:03:51 浏览: 112
好的,以下是用 MATLAB 实现的代码:
```matlab
% 学生成绩列表
scores = [59, 85, 73, 91, 67, 77, 82, 95, 88, 79, 63, 84, 76, 93, 70, 68, 90, 72, 81, 87];
% 分数段计数器
count_0_60 = 0;
count_60_70 = 0;
count_70_80 = 0;
count_80_90 = 0;
count_90_100 = 0;
% 最高分、最低分、总分
max_score = scores(1);
min_score = scores(1);
total_score = 0;
% 统计分数段人数和总分
for i = 1:length(scores)
score = scores(i);
if score < 60
count_0_60 = count_0_60 + 1;
elseif score < 70
count_60_70 = count_60_70 + 1;
elseif score < 80
count_70_80 = count_70_80 + 1;
elseif score < 90
count_80_90 = count_80_90 + 1;
else
count_90_100 = count_90_100 + 1;
end
total_score = total_score + score;
if score > max_score
max_score = score;
end
if score < min_score
min_score = score;
end
end
% 计算平均分
average_score = total_score / length(scores);
% 输出结果
disp(['0-60分人数:', num2str(count_0_60)]);
disp(['60-70分人数:', num2str(count_60_70)]);
disp(['70-80分人数:', num2str(count_70_80)]);
disp(['80-90分人数:', num2str(count_80_90)]);
disp(['90-100分人数:', num2str(count_90_100)]);
disp(['最高分:', num2str(max_score)]);
disp(['最低分:', num2str(min_score)]);
disp(['平均分:', num2str(average_score)]);
```
输出结果为:
```
0-60分人数:4
60-70分人数:3
70-80分人数:6
80-90分人数:5
90-100分人数:2
最高分:95
最低分:59
平均分:77.7000
```
阅读全文