不是输入成绩再划分等级,是要对已经存在的数组中的数据划分等级
% 定义等级分界线
thresholdA = 80;
thresholdB = 60;
% 找出成绩大于 thresholdA 的学生
indexA = find(scores > thresholdA);
% 将这些学生的成绩设为 A
scores(indexA) = 'A';
% 找出成绩大于 thresholdB 小于等于 thresholdA 的学生
indexB = find(scores > thresholdB & scores <= thresholdA);
% 将这些学生的成绩设为 B
scores(indexB) = 'B';
% 剩余的学生的成绩设为 C
scores(setdiff(1:length(scores), [indexA; indexB])) = 'C';
望采纳。
可以使用 if 语句或 case 语句来将数据分成等级。
% 假设成绩在变量 scores 中
scores = [88 92 76 95];
% 初始化等级变量
grades = char(zeros(size(scores)));
for i = 1:length(scores)
if scores(i) >= 90
grades(i) = 'A';
elseif scores(i) >= 80
grades(i) = 'B';
elseif scores(i) >= 70
grades(i) = 'C';
elseif scores(i) >= 60
grades(i) = 'D';
else
grades(i) = 'F';
end
end
% 打印成绩等级
disp(grades)
% 假设成绩在变量 scores 中
scores = [88 92 76 95];
% 初始化等级变量
grades = char(zeros(size(scores)));
for i = 1:length(scores)
switch true
case scores(i) >= 90
grades(i) = 'A';
case scores(i) >= 80
grades(i) = 'B';
case scores(i) >= 70
grades(i) = 'C';
case scores(i) >= 60
grades(i) = 'D';
otherwise
grades(i) = 'F';
end
end
% 打印成绩等级
disp(grades)