2024年3月7日发(作者:贵明达)
__________________________________________________
习题三
3-2 从键盘输入一个三位整数,将它反向输出。如输入639,输出为936
程序如下:
m=input('请输入一个三位整数:');
m1=fix(m/100);%求m的百位整数
m2=rem(fix(m/10),10);%求m的十位数字
m3=rem(m,10);%求m的个位数字
m=m3*100+m2*10+m1%反向输出m
3-3 输入一个百分制成绩,要求输出成绩等级A,B,C,D,E。其中90~100分为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。
要求:(1)分别用if语句和switch语句实现。
(2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。
程序如下:
(1)if语句
c=input('请输入成绩:');
if c>=90&c<=100
disp('A 成绩合理');
elseif c>=80&c<=89
disp('B 成绩合理');
elseif c>=70&c<=79
disp('C 成绩合理');
elseif c>=60&c<=69
disp('D 成绩合理');
elseif c<60
disp('E 成绩合理');
else
disp('成绩错误');
end
(2)switch语句
c=input('请输入成绩:');
switch fix(c)
case num2cell(90:100)
disp('A 成绩合理');
case num2cell(80:89)
disp('B 成绩合理');
case num2cell(70:79)
disp('C 成绩合理');
case num2cell(60:69)
disp('D 成绩合理');
case num2cell(0:59)
disp('E 成绩合理');
otherwise
disp('成绩错误');
end
收集于网络,如有侵权请联系管理员删除
__________________________________________________
3-4 建立5*6矩阵,要求输出矩阵第N行元素。当N值超过矩阵的行数时,自动转为输出矩阵最后一行元素,并给出出错信息。
程序如下:
clear all
a=fix(rand(5,6)*89)+10;
n=input('请输入行数n(输出结果是5*6矩阵的元素):');
if n>5|n<0
b=a(5:5,:);
disp(['输入行数错误,程序输出最后一行:',num2str(b)])
else
c=a(n:n,:);
disp(['输出结果为:',num2str(c)])
end
3-5 产生20个两位随机整数,输出其中小于平均值的偶数。
程序如下:
x=fix(rand(1,20)*89)+10;
x1=fix(sum(x)/20);
disp(['平均数是: ',num2str(x1)])
2024年3月7日发(作者:贵明达)
__________________________________________________
习题三
3-2 从键盘输入一个三位整数,将它反向输出。如输入639,输出为936
程序如下:
m=input('请输入一个三位整数:');
m1=fix(m/100);%求m的百位整数
m2=rem(fix(m/10),10);%求m的十位数字
m3=rem(m,10);%求m的个位数字
m=m3*100+m2*10+m1%反向输出m
3-3 输入一个百分制成绩,要求输出成绩等级A,B,C,D,E。其中90~100分为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。
要求:(1)分别用if语句和switch语句实现。
(2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。
程序如下:
(1)if语句
c=input('请输入成绩:');
if c>=90&c<=100
disp('A 成绩合理');
elseif c>=80&c<=89
disp('B 成绩合理');
elseif c>=70&c<=79
disp('C 成绩合理');
elseif c>=60&c<=69
disp('D 成绩合理');
elseif c<60
disp('E 成绩合理');
else
disp('成绩错误');
end
(2)switch语句
c=input('请输入成绩:');
switch fix(c)
case num2cell(90:100)
disp('A 成绩合理');
case num2cell(80:89)
disp('B 成绩合理');
case num2cell(70:79)
disp('C 成绩合理');
case num2cell(60:69)
disp('D 成绩合理');
case num2cell(0:59)
disp('E 成绩合理');
otherwise
disp('成绩错误');
end
收集于网络,如有侵权请联系管理员删除
__________________________________________________
3-4 建立5*6矩阵,要求输出矩阵第N行元素。当N值超过矩阵的行数时,自动转为输出矩阵最后一行元素,并给出出错信息。
程序如下:
clear all
a=fix(rand(5,6)*89)+10;
n=input('请输入行数n(输出结果是5*6矩阵的元素):');
if n>5|n<0
b=a(5:5,:);
disp(['输入行数错误,程序输出最后一行:',num2str(b)])
else
c=a(n:n,:);
disp(['输出结果为:',num2str(c)])
end
3-5 产生20个两位随机整数,输出其中小于平均值的偶数。
程序如下:
x=fix(rand(1,20)*89)+10;
x1=fix(sum(x)/20);
disp(['平均数是: ',num2str(x1)])