|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
4 O- i1 U4 \1 i一、实验任务和目的# ?7 _1 ]- K5 s! S) p6 d* P
- 熟悉程序设计思想。
- 掌握伪代码的编写方法。
- 掌握分支语句和循环结构的用法。- ?) v* F' w3 Y3 [4 Q$ m
- V; f! x1 i% k; j# Y
二、实验内容9 z; _7 C+ h0 F- f( \: w/ W
1、输入一个百分制成绩,要求输出成绩等级A、B、C、D、E,其中90-100为A,80-89为B,70-79为C,60-69为D,60分以下为E。要求
7 _& _8 L& Q9 F4 t2 S(1)分别用if语句和switch语句实现;
/ K M: E. C' r, b" _' S& M0 u(2)应对输入的成绩进行合理性判断,对不合理的成绩应输出错误信息。1 F. d$ x/ [5 ]0 l3 v8 B
( x! L5 V+ x- V' b, K
2、编程实现一个九九乘法表,并屏幕显示出来,如下图所示:
M/ Y7 ?3 Z8 k+ ]2 h
! J, D+ R" @( b) F4 U4 R
1 Y3 Z9 o# M. U/ h$ I4 P( g1 h4 @% W$ Y+ ?% n6 c9 E) ~
3、计算the day of year(年积日),the day of year 是指这一年已经逝去的天数(包括当天)。在平年中,它的取值范围为1到365,在闰年中,它的取值范围1 到366。编写一个MATLAB 程序,输入年、月、日,输出为对应的the of year。" Q7 P# U5 M, o4 U$ B
0 _& A5 f( c. n! h
三、实验过程和结果: U, k$ h y# N6 {$ A$ W; R+ c
1、输入一个百分制成绩,要求输出成绩等级A、B、C、D、E,其中90-100为A,80-89为B,70-79为C,60-69为D,60分以下为E。要求$ _$ @3 N4 S3 M8 d/ J
(1)分别用if语句和switch语句实现;2 N6 g1 g/ N% S% x% x9 \
If语句:; v' e5 P* g; r- d* g
- x=input(‘成绩’);
- if x>=90&&x<=100
- disp('A');
- elseif x>=80&&x<=89
- disp('B');
- elseif x>=70&&x<=79
- disp('C');
- elseif x>=60&&x<=69
- disp('D');
- else disp('E');
- end. A( Z( m3 \) E c( Q. ?0 o. K
, F' w" V$ C8 @, h' C% n1 p' T. I f' eswitch语句:/ P- D% t' P- B( Q7 a4 l
7 k8 P% Q* D; P5 M
- x=input('成绩');
- switch x
- case num2cell(90:100)
- disp('A');
- case num2cell(80:89)
- disp('B');
- case num2cell(70:79)
- disp('C');
- case num2cell(60:69)
- disp('D');
- otherwise
- disp('E');
- end' m' M0 r& u2 c4 t( q, P) a
: x8 Q- Y; g, W7 w
- y7 {3 e# n- b% H1 j( Z(2)应对输入的成绩进行合理性判断,对不合理的成绩应输出错误信息。( l6 x6 X; D: }
4 t4 l% K/ p0 y+ |3 G0 W* w% T9 \- x=input('成绩');
- if(x>100||x<0)
- disp('wrong input');
- else
- switch x
- case num2cell(90:100)
- disp('A');
- case num2cell(80:89)
- disp('B');
- case num2cell(70:79)
- disp('C');
- case num2cell(60:69)
- disp('D');
- otherwise
- disp('E');
- end
- end
( |7 Z. A* r9 L% t0 K8 @$ [% C
3 S; |) q) b1 _4 ^' }6 Y
7 d2 |* ?. [7 N$ I1 ]2、编程实现一个九九乘法表,并屏幕显示出来,如下图所示:
1 `' a6 C* Y; @+ M% h
; {# l& Y9 W6 P6 y1 M1 N7 p2 b3 B0 G! F! T$ i
- for i=1:9
- for j=1:i
- fprintf('%dx%d=%d',j,i,i*j);
- if(j~=i)
- fprintf(' ');
- end
- end
- fprintf('\n');
- end
$ X$ w, _; g J; n
5 p8 Q6 q: t) R' w$ a |4 M
' S4 D1 C9 `5 @& O' [% X% U, ]3、计算the day of year(年积日),the day of year 是指这一年已经逝去的天数(包括当天)。在平年中,它的取值范围为1到365,在闰年中,它的取值范围1 到366。编写一个MATLAB 程序,输入年、月、日,输出为对应的the of year。
# R7 }# n# s$ z+ {1 z8 o6 h- y=input('年');
- m=input('月');
- d=input('日');
- sum=0;
- a=[31,28,31,30,31,30,31,31,30,31,30,31];
- b=[31,29,31,30,31,30,31,31,30,31,30,31];
- if(y<0||m<0||d<0||m>12||d>31)
- fprintf('wrong input');
- else
- if(mod(y,400)==0||mod(y,100)~=0 && mod(y,4)==0)
- for i=1:m-1
- sum=sum+b(i);
- end
- if(d>b(m)) fprintf('wrong input');
- else fprintf('%d',sum+d);
- end
- else
- for i=1:m-1
- sum=sum+a(i);
- end
- if(d>b(m)) fprintf('wrong input');
- else fprintf('%d',sum+d);
- end
- end
- end
% I. J: L2 y G2 E; R " z2 u5 U1 T5 Z# S* a" f7 ^* x; V
/ u7 U8 W/ v1 z- j1 G$ ~& i* J# h
四、实验总结和心得/ h' ?' F2 \. Q2 R: M
熟悉了程序设计思想。
( Z/ u& s2 M. ^4 R; U8 T( }掌握了伪代码的编写方法。
+ D1 T" c! W+ C8 y, O% T Z/ z( A掌握了分支语句和循环结构的用法。
7 \# @ h# G- @. `1 X; d9 i
9 v5 p4 W# |% E7 D/ m9 {
6 Y7 G' Q9 H! h8 G4 e# u |
|