用Matlab实现下面这道题。己知学生的名字和百分制分数。要求根 据学生的百分制分数,分别采用“满分” “优秀”、 “良好”、 “及格”和“不 及格” 等表示学生的学习成绩。

img

你好,直接用if语句呢!

Names = {'Jack', 'Marry' ,'Peter' ,'Rose', 'Tom'}';
Scores = [72,83,56,94,100]';
Rank = cell(size(Names,1),1);
T = table(Names, Scores, Rank);
for i = 1:1:size(T,1)
    if(T.Scores(i)==100)
        T.Rank{i} = '满分';
    elseif(T.Scores(i)>=90)
        T.Rank{i} = '优秀';
    elseif(T.Scores(i)>=80)
        T.Rank{i} = '良好';
    elseif(T.Scores(i)>=60)
        T.Rank{i} = '及格';
    else
        T.Rank{i} = '不及格';
    end
end
T

结果:

T =

  5×3 table

      Names      Scores      Rank   
    _________    ______    _________

    {'Jack' }      72      {'及格' }
    {'Marry'}      83      {'良好' }
    {'Peter'}      56      {'不及格'}
    {'Rose' }      94      {'优秀' }
    {'Tom'  }     100      {'满分' }