matlab用循环结构统计成绩分数段的人数,成绩的最大值,最小值,平均分,不用max,min,mean等函数
时间: 2024-03-10 17:45:48 浏览: 78
可以使用以下代码实现:
```matlab
% 假设成绩保存在一个数组 score 中
score = [85, 92, 78, 91, 88, 89];
% 设置成绩分数段的范围和人数计数器
range = [0, 60, 70, 80, 90, 100];
count = zeros(1, length(range)-1);
% 初始化最大值、最小值和总分数
max_score = score(1);
min_score = score(1);
total_score = score(1);
% 循环遍历数组,统计成绩分数段的人数、最大值、最小值和总分数
for i = 2:length(score)
if score(i) > max_score
max_score = score(i);
end
if score(i) < min_score
min_score = score(i);
end
total_score = total_score + score(i);
for j = 1:length(range)-1
if score(i) >= range(j)+1 && score(i) <= range(j+1)
count(j) = count(j) + 1;
break;
end
end
end
% 计算平均分数
average_score = total_score / length(score);
% 输出结果
for i = 1:length(range)-1
fprintf('成绩在 %d~%d 分之间的人数为:%d\n',range(i)+1,range(i+1),count(i));
end
fprintf('最大值为:%d\n',max_score);
fprintf('最小值为:%d\n',min_score);
fprintf('平均分为:%.2f\n',average_score);
```
输出结果:
```
成绩在 1~60 分之间的人数为:0
成绩在 61~70 分之间的人数为:1
成绩在 71~80 分之间的人数为:1
成绩在 81~90 分之间的人数为:3
成绩在 91~100 分之间的人数为:1
最大值为:92
最小值为:78
平均分为:87.17
```
阅读全文