




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
精選試題
中南大學matlab課后習題⑴
編制:__________________________
審核:__________________________
出版:__________________________
第二章
1?求下列表達式的值。
(1)w=sqrt(2)*(l+*10A-6)
w=
(2)a=;b=5;c=;
x=(2*pi*a+(c+b)/(pi+a*b*c)-exp(2))/(tan(b+c)+a);
x=
(3)a=;b=;
y=2*pi*aA2*[(l-pi/4)*b-4)*a];
y=
(4)t=[2,l-3i;5J;
z=l/2*exp(2*t)*log(t+sqrt(l+tA2));
z=
+004*
2,已知a,b,求下列表達式的值。
a=[-l,5,-4;0,7,8;3,61,7];b=[83rl;2,5,3;-3A0];
(1)a+6*b
ans=
4723-10
123726
-15737
aA2-b+eye(3)
ans=
-18-21717
22533109
21867526
(2)a*b
ans=
141416
-105121
125328180
a.*b
ans=
-8154
03524
-91220
b*a
ans=
-110-15
722853
3-128
(3)a/b
ans=
(4)[a,b]
ans=
-15-483-1
078253
3617-320
[a([l,3],:);bA2]
ans=
-15-4
3617
73371
173713
-2019
3.已知a,完成下列操作。
a=[23,10”0;41?45,65,5;32,5,0,32;6,,54J;
(1)輸出a在[10,25]范圍內的全部元素。
k=find(a>10&a<25)
a(k)
k=
1
ans=
23
⑵取出a前3行構成矩陣b,前兩列構成矩陣c,右下角3*2子矩陣構成矩陣d,b與c的乘積構
成矩陣e。
b=a(l:3,:)
b=
0
0
c=a(:,l:2)
d=a(2:4,3:4)
d=
0
e=b*c
e=
+003*
(3)分別求表達式額e<d,e&d,e|d和~0k(1的值。
e<d
ans=
01
00
01
e&d
ans=
0
e|d
ans=
11
11
11
-e|-d
ans=
00
10
00
4,產生5階希爾伯特矩陣H和5階帕斯卡矩陣P,且求其行列式的值Hh和Hp以及他們的條件數
Th和Tp,判斷哪個矩陣性能更好,為什么
formatrat
H=hilb⑸
H=
11/21/31/41/5
1/21/31/41/51/6
1/31/41/51/61/7
1/41/51/61/71/8
1/51/61/71/81/9
P=pascal(5)
P=
I1111
12345
1361015
14102035
15153570
Hh=det(H)
Hh=
1/0000
Hp=det(P)
Hp=
Th=cond(H)
Th=
476607
Tp=cond(P)
Tp=
178868/21
P矩陣性能更好,因為Tp更接近1.
5.已知A,求A的特征值及特征向量,并分析其數學意義。
A=[-29,6,18;20,5,12;-8,8,5]
A=
-29618
20512
-885
[V,D]=eig(A,,nobalance,)
V=
1361/1013493/1574
-1227/1438-11
290/593551/788331/713
D=
-3595/14200
0-3755/3570
004697/279
第二早
1.從鍵盤輸入一個3位整數,將它反向輸出。如輸入639,輸出為936.
clear
m=inputC請輸入一個三位數:,;
ml=fix(m/100);
m2=rem(fix(m/10),10);
m3=rem(m,10);
m=nil+m2*10+m3*100;
disp(m);
請輸入一個三位數:453
354
2.輸入一個百分制成績,要求輸出成績等級A、B、C、D、Eo其中90?100分為A,80?89
分為B,70?79分為C,60?69分為D,60分以下為E。要求:
(1)分別用if語句和switch語句實現。
(2)輸入百分制成績后要判斷該成績的合理性,對不合理的成績應輸出出錯信息。
c=inputC請輸入一個百分制分數:,;
ifc>=90&c<=100%用if語句實現
disp(A);
elseifc>=80&c<90
disp(B);
elseifc>=70&c<80
dispCC*);
elseifc>=60&c<70
disp('D');
elseifc>=0&c<60
disp(E);
else
dispC輸入出錯力
end
請輸入一個百分制分數:88
B
c=inputC請輸入一個百分制分數:,);
switchfix(c/10)%用switch語句實現
case{9,10}
m='A';
case{8}
m=B1;
case{7}
m=C;
case{6}
m='D';
casenum2cell(0:5)
m='E';
otherwise
輸入出錯,;
end
disp(m);
請輸入一個百分制分數:98
A
3.輸入20個數,求其中最大數和最小數。要求分別用循環結構和調用MATLAB的max函數、
min函數來實現。
a=input。請輸入二十個數上%用循環結構實現
max=a(l);
min=a(l);
fori=l:20;
ifmax<a(i);
max=a(i);
end
ifmin>a(i);
min=a(i);
end
end
max
min
請輸入二十個數[3465344555665543322226]
max=
44
min=
2
4.丫=^^-$1111+0,3)+11#答,當2取、、、一、、、時,求各點的函數值。要求分別用順序結
構和循環結構實現。
clear
fora=::%用循環結構實現
y=((exp*a)-exp*a))/2)*sin(a++log(+a)/2)
end
y=
+
y=
+
y=
+
y=
+
y=
+
y=
+
y=
+
y=
+
y=
+
y=
+
y=
4-
y=
+
y
+
y=
+
y=
+
y=
+
y=
+
y=
+
y=
+
y=
+
y=
+
y=
+
y
+
y=
+
y=
+
y=
+
y=
+
y=
y=
y=
y
y=
y
y
y=
y=
y=
y
y=
y=
y=
y=
y=
y=
y=
y=
y=
y=
y=
y=
y
y
y
y
y=
y=
y
y=
y=
y=
y=
5.當n分別取100、1000、10000時,求下列各式的值:
clear
n=inputt輸入一個數:,);%用循環結構實現
a=0;
fori=l:n
a=a+l/(iA2);
end
disp(a);
j=l:n;%用sum函數實現
b=sum(l./(j.A2));
輸入一個數:34
b=
-2?24*46*6,
⑵(舒x(0(二7)?(記—)?今
clear
n=input(,輸入一個數:,);%用循環結構實現
a=l;
fori=l:n
a=((2*i*i*2)/((2*i-l)*(2*i+l)))*a;
end
disp(a);
輸入一個數:8
6.建立65矩陣,要求輸出矩陣第n行元素。當n值超過矩陣的行數時,自動轉為輸出矩陣
最后一行元素,并給出出錯信息。
clear
a=rand(5,6);
n=inputC請輸入一個數:,;
ifn>5
n=5
a(n,:)
dispC輸入超出范圍了
else
a(n,:)
end
請輸入一個數:4
ans=
請輸入一個數:7
5
ans=
輸入超出范圍
7.已天口y-式刈+儂)
⑴當f(n)=n+101n(nA2+5)B^,y的值是多少。
functiona=n2a(n)
a=n+10*log(n*n+5)
y=n2a(40)/(n2a(30)+n2a(20))
a=
y=
(2)當f(n)=l*2+2*3+3*4+?+n*(n+l)時,y的值是多少。
functionb=nlb(n)
b=0;
fori=l:n
b=b+i*(i+l);
end
y=nlb(40)/(nlb(30)+nlb(20))
y=
第四章
i.繪制下列曲線。
⑴y=x->
x=-10::l();
y=x-x.A3/6;
plot(x,y)
(2*+2y2=64
x=-10::10;
ezplot(,xA2+2*yA2-64\[-8,8]);
gridon;
2,設
i
y=7T7T,-n<tWn,
在同一圖形窗口采用子圖的形式繪制條形圖,階梯圖,桿圖和對數坐標圖等不同圖形,
并對不同圖形加標注說明。
t=-pi:pi/10:pi;
y=l./(l+exp(-t));
subplot(2,2,l);
bar(t,y);
titled條形圖(t,y),);
axis([-pi,pi,O,lD;
subplot(2,2,2);
stairs(t,y,'b');
titled階梯圖(t,y),;
axis([-pi,pi,O,l]);
subplot(2,2,3);
stem(t,y,'k');
titled桿圖(t,y),;
axis([-pi,pi,O,l]);
subplot(2,2,4);
loglog(t,y,'y');
title。對數坐標圖(t,y>);
Warning:Negativedataignored
>Intitleat42
Intitleat23
3.繪制下列極坐標圖。
(1)p=5cos。+4
t=0:pi/50:2*pi;
r=5.*cos(t)+4;
polar(t,r);
title(,\rho=5*cos\theta+4,);
p=5*cos0+4
/與、5sin2(?兀兀
(2)yi=——COSQ'-3r—<T?<—-3
t=-pi/3:pi/50:pi/3;
r=5.*((sin(t)).A2)./cos(t);
polar(t,r);
4.繪制下列三維圖形。
x=eA-(t/20)cost
A
(1)y=e-(t/20)sint?0<t<2jt
t=0:pi/50:2*pi;
x=exp(-t./20).*cos(t);
y=exp(-t./20).*sin(t);
z=t;
plot3(x,y,z);
gridon;
(2)z=5,|x|w5,|ylw5.要求應用插值著色處理。
[x,y]=meshgrid(-5:5);
z=zeros(ll)+5;
mesh(x,y,z);
shadinginterp;
6
axisoff.
shading總加;
}=moviein(20);
i=l:20
axis(Uhi,i』D
m(M=g“frame.
end
第五章
1,利用matlab提供的randn函數生成符合正態分布的10*5隨機矩陣A,進行以下操作:
(1)A各列元素的均值和標準方差。
(2)A的最大元素和最小元素。
(3)求A每行元素的和以及全部元素的和。
(4)分別對A的每列元素按升序,每行元素按降序排列。
A=randn(10,5)
x=mean(A)
y=std(A)
Max=max(max(A))
Min=min(min(A))
Sumhang=sum(A,2)
SumA=sum(Sumhang)
B=sort(A);
C=sort(B,2,descend*);
C
A
X=
y=
Max=
Min=
Sumhang=
SumA=
C=
2,按要求對指定函數進行插值和擬合。
(1)按表一所示用三次樣條方法插值計算0~90°內整數點的正弦值和0~75°內整數點的正
切值,然后用5次多項式擬合方法計算相同的函數值,并將兩種計算結果進行比較。
(2)按表二所示用3次多項式方法插值計算1~100之間整數的平方根。
表一特殊角的正弦與正切值表
a(度)0153045607590
sina007071
tana0
表二1~100內特殊值的平方根表
NI49162536496481100
VN12345678910
(1)
a=0:15:90;
b=a./180.*pi;
s=sin(b)
c=0:15:75;
d=c./180.*pi;
t=tan(d)
e=inputC請輸入想計算的值:,)
S=sin(e/18()*pi)
T=tan(e/180*pi)
Sl=interpl(a,s,e,Spline1)
Tl=interpl(c,t)e/spline,)
Pl=polyfit(a,s,5);
P2=polyfit(c,t,5);
S2=polyval(Pl,e)
T2=polyval(P2,e)
0
0
請輸入想計算的值:s=
T=
SI=
T1=
S2=
T2=
(2)
n=[l,9,16,25,36,49,64,81,100];
N=sqrt(n);
x=inputC計算值:*);
interpl(iijNyX/cubic*)
計算值:ans=
5
3,己知h⑴=e%t,t20,取N=64,對t從。?5秒采樣,用FFT作快速傅里葉變換,并繪制相應的振
幅----頻率圖。
N=64;
T=5;
t=linspace(O,T,N);
h=exp(-t);
dt=U2)?t⑴;
f=l/dt;
X=fft(t);
F=X(l:N/2+l);
f=f*(0:N/2)/N;
plot(f,abs(F),,-*t)
4,有兩個多項式P(x)=2x八4?3x八3+5x+13,Q(x)=x八2+5x+8,試求P(x),P(x)Q(x)以及P(x)/Q(x)的導
數。
P=[2,.3,0,5,13];
Q=U,5,8];
p=polyder(P)
q=polyder(P,Q)
[a,b]=polyder(P,Q)
P=
8-905
q=
12354-5776105
a=
42734-77-26-25
b=
110418064
5,有3個多項式PI(x)=xA4+2xA3+4xA2+5,P2(x)=x+2,P3(x)=x^2+2x+3,試進行下歹操作:
(1)求P(x)=Pl(x)+P2(x)P3(x)o
(2)求P(x)的根。
(3)當x取矩陣A的每一元素時,求P(x)的值。其中
A=-l
2
05
(4)當以矩陣A為自變量時,求P(x)的值。其中A的值與(3)相同。
Pl=[l,2,4,0,5];
P2=[0,l,2];
P3=[l,2,3];
P=Pl+conv(P2,P3)
X=roots(P)
A=[-l?;,2,;0,5,];
p=polyval(P,A)
Undefinedfunctionorvariable*x*.
第六章
1,下面是一個線性病態方程組:
11
23;xl0.95
11
-*x2=0.67
34
11ix30.52
45
(1)求方程的解。
(2)將方程右邊向量元素b3改為,再求解,并比較b3的變化和解的相對變化。
(3)計算系數矩陣A的條件數并分析結論。
A=[l/2,l/3,l/4;l/3,l/4,l/5;l/4,l/5,l/6];
P=[,J;
x=A\p
A=[l/2,1/3,1/4;1/3,1/4,1/5;1/4,1/5,1/6J;
P=[J';
x=A\p
cond(A)
x=
x=
ans=
+003
2,求下列方程的解。
413
(1)x+x+l=0,x0=-l
functionfx=fun(x)
fx=x.A41+x.A3+l;
xO=fzero(,fun*,-l)
x0=
functionfx=fun(x)
fx=x-sin(x)/x;
xOMzeroCfun*,-1)
sinx+y2+lnz-7=0
(3)3x+2y-z3+1=0,初值xO=l,yO=l,zO=l.
,x+y+z-5=0
functionq=myfun(d)
x=d(l)
y二d⑵
z=d(3)
q(1)=sin(x)+yA2+log(z)-7;
q(2)=3*x+2Ay-zA3+l;
q(3)=x+y+z-5
options=optimset('Display','ofr);
x=fsolve(@myfun,[1,1,1],,options)
4,求函數在指定區間的最大值。
1+
f(x)=77G,x£(0,2)
function[xy]=qiujizhi()
h=;%%解的精度
x=;
y=(l+xA2)/(l+xA4);
while(l+(x+h)A2)/(l+(x+h)A4)>y
x=x+h;
y=(l+xA2)/(l+xA4);
end
fprintfC極大值時x取值%,極大值時y=,%\x,y);
極大值時x取值,極大值時y=,+000ans=
5,設有400萬元資金,要求4年內使用完,若在一年內使用資金x萬元,則可得效益Jx萬元
(效益不能再使用),當年不用的資金可存入銀行,年利率為10%。試制定出資金的使用計劃,
以使4年效益之和最大。
(1)先建立M文件,定義目標函數:
functionf=fun4(x)
f=-(sqrt(x(1))+sqrt(x(2))+sqrt(x(3))+sqrt(x(4)));
(2)再建立M文件定義非線性約束:
functionfg,ceq]=mycon(x)
g(l)=x(1)-400;
g(2)=*x(1)+x(2)-440;
g(3)=*x(1)+*x(2)+x(3)-484;
g(4)=*x(1)+*x(2)+*x(3)+x(4);ceq=0
(3)主程序為:
x0=[l;l;l;l];
vlb=[0;0;0;0];
vub=[];
A=[];
b=[];
Aeq=[];
beq二口;
[x,fval]=fmincon(,fun4,,xO,A,b,Aeq,beq,vlb,vub,'mycon')
x=
fval=
第七章
1,求定積分。
⑴I=&x
11
2
(2)(x-0.3)2+001-(x.0.9)+0.04-
(1)formatlong
fx=inline('sin(x)./x');
|I,n]=quadl(fx,0,2,le-10)
1=
n=
19
(2)fonnatlong
fx=inline(,l./(.A2+-L/(.A24-6,);
[I,n]=quad(fx,0,l,le-10)
1=
985
2,求二重定積分。
=
(1)Ii/o/oe-&+y)dxdy
globalki;
ki=0;
I=dblquad(@fxy,O,l,OJ)
ki
(2)12=J:5|cos?(x+y)|dxdy
f=inline('abs(cos(x+y))','x'y);
I=dblquad(f,O,pi,O,pi)
3,分別用矩形,梯形公式計算由表一中數據給出的定積分I=/:;f(x)dx.
表一被積函數f(x)數據表
k1234567
Xk0,7
F(Xk)
x=::;
F=L,,,,J;
trapz(X,F)
4,設X由[2,2叮]區間內均勻分布的10個點組成,求向量sinX的1~3階差分。
p=0:pi/5:2*pi;
forn=l:3
n
DX=diff(sin(p),n)
end
5,設
SU1X
用3種不同的方法求函數f(x)的數值導數,并在同一個坐標系中作出f'(x)的圖像。
f=inline(*sin(x)J(x+cos(2.*x))*);
g=inline(,(cos(x).*(x+cos(2*x))-sin(x).*(l-2.*sin(2*x)))/(x+cos(2.*x)).A2,);
x="pi::pi;
p=polyfit(x,f(x),5);
dp=polyder(p);
dpx=polyval(dp,x);%求dp在假設點的函數值dx=diff(f([x,]))/;%直接對f(x)
求數值導數
gx=g(x);%求函數f的導函數g在假設點的導數
plot(x,dpx,x,dx,',x,gx,'-');
第八章
1,分解因式。
(1)xA4-yA4
symsxy;
s=xA4-yA4;
factor(s)
ans=
(x-y)*(x+y)*(xA2+yA2)
(2)5135
factor(5135)
ans=
51379
2,求函數的極限。
symsx;
f=(x-2)/(xA2-4);
limit(f9x,2)
ans=
1/4
m-Jarccosx
⑵
symx;
f=(sqrt(pi)-sqrt(acos(x)))/sqrt(x+l);
limit(f,x,-l,,right,)
ans=
-Inf
3,求函數的符號導數。
(1)y=sinj,求y;y”。
symx;
f=sin(l/x);
diff(f;x\2)
ans=
-cos(l/x)/xA2
ans=
(2*cos(l/x))/xA3-sin(l/x)/xA4
1-cos?(2x),x,”
⑵y=一一,求y,y.
symx;
f=(l-cos(2*x))/x;
difT(f,k)
diff(f,'x',2)
ans=
(2*sin(2*x))/x+(cos(2*x)-l)/xA2
ans=
(4*cos(2*x))/x-(4*sin(2*x))/xA2-(2*(cos(2*x)-l))/xA3
4,求積分。
(1)JJe,+Idx
symx;
f=sqrt(exp(x)+l);
int(f,'x*)
ans=
2*(exp(x)+l)A(l/2)+2*atan((exp(x)+l)A(l/2)*i)*i
⑵舄dy
symsxy;
f=x/(x+y);
int(f,y)
ans=
x*log(x+y)
(3)/"(I+ex)2dx
symx;
f=exp(x)*(l+exp(x))A2;
int(f,'x',0,log(2))
ans=
(exp(62433/9007)*(3*exp(62433/9007)+exp(62433/)+3))/3-7/3
(4)/:xlnxdx
symx;
f=x*log(x);
int(f,'x',l,exp(l))
Undefinedfunctionorvariable*x*.
5,求下列級數之和。
(1)1-1/2+1/3-1/4+-+C-l)n+1H--
symx;
s=symsum((-l)A(x+l)/x,l,Inf)
s=
log⑵
/C、x3x5x7
⑵x+y+y+7+?
symy;
z=symsum(yA(2*y-l)/(2*y-l),l,Inf)
z=
sum(yA(2*y-1)/(2*y-1),y=I..Inf)
6,求函數在x=xO處的泰勒展開式。
、x+ex
(1)y=e--~,x0=0,n=5.
(2)(7x3-2x+l,xO=0,n=6
symx;
fl=(exp(x)+exp(-x))/2;
f2=sqrt(xA3-2*x+l);
taylor(fl,x,5,0)
taylor(f2,x,6,0)
ans=
xA4/24+xA2/2+1
ans=
-xA5/8-xA4/8-xA2/2-x+1
7,求非線性方程的符號解。
(1)x3+ax+1=0
(2)sinx+2cosx-Jx=0
ln|=9
(3)
,ex+y=3
symsxya;
x=solve(,xA3+a*x+l=0*,'x')
x=solve(*sin(x)+2*cos(x)-sqrt(x)=0,/x,)
[xy]=solve(,log(x/y)=9,/exp(x+y)=3','x,/yr)
x=
((aA3/27+l/4)A(l/2)?1/2)人(1/3)?a/(3*((aA3/27+1/4)八(1⑵?1/2)八(1/3))
a/(6*((aA3/27+l/4)A(l/2)-l/2)A(l/3))-((aA3/27+l/4)A(l/2)-l/2)A(l/3)/2-(3A(l/2)*(a/(3*((aA3/27+
1/4)A(1/2)-l/2)A(l/3))+((aA3/27+l/4)A(l/2)-l/2)A(l/3))*i)/2
a/(6*((aA3/27+1/4)八(1/2)-1/2)八(1/3))-((a八3/27+1/4)八(1/2)?1/2)八("3)/2+(3A(l/2)*(a/(3*((aA3/27
+1/4)八(1/2)-1⑵八(1/3))+((aA3/27+l/4)A(l/2)-l/2)A(l/3))*i)/2
x=
*i-227.
X=
(exp(9)*log(3))/(exp(9)+1)
y=
log(3)/(exp(9)+1)
8,求微分方程初值問題的符號解,并與數值解進行比較。
xy"+(l-n)y,+y=0
y(0)=y(0)=0
symsn;
|x,y]=dsolve(,x*(D2y)+(l-n)*(Dy)+y=0,;y(0)=0\*Dy(0)=0\,x')
Warning:possiblymissingsolutions[solvini]
Warning:Explicitsolutioncouldnotbefound.
>Indsolveat101
x=
[emptysym]
y=
[]
第九~十二章
第九章
1建立一個圖形窗口,使之背景顏色為紅色,并在窗口上保留原有的菜單項,而且在按下鼠
標左鍵之后顯示出LeftButtonPressed字樣。
hf=figure(,color\[l0OJ/MenuBar,/figure^^WindowButtonDownFcn'/textj/TeftButton
Pressed**)')
hf=
1
2,利用圖形對象繪制下列曲線,要求先利用默認屬性繪制曲線,然后通過圖形句柄操作來改
變曲線的顏色,線型和線寬,并利用文本對象給曲線添加文字標注。
y=;ln?(x+71+x2)
clearall
x=-l::5;
y=*log(x+sqrt(l+x.A2));
hy=plot(x,y)
seUhy/color^/r*,TineStyle','f/LineWidth*,1);
text(3,2八?l,'y="log(x+sqrt(l+x八2)')
hy=
t=0:2:100;
x=t.*t;
y=5*LA3;
hf=plot(x,y);
set(hf/color*,,b,/linestyle,,,:','marker','p,,'linewidth1,;
text(5000,3*10A6;x=tA2y=5tA3f)
x10
5r-
4.5
*
4
*
3.5
3x=t2y=5t3*
2.5
2
?K
1.5
it
求
0.5
10002000300040005000600070008000900010000
3,利用圖形對象繪制下列三維圖形,要求對圖形進行光照處理。
22
z=x+y-5sin?(xy)
[x,y]=meshgrid(-1000,10,1000);
z=x.*2+y.*2-5*sin(x.*y);
plot3(x,y,z);
%axisequal
light('color\[0,0,lJ;position',[-1000,-1000,2])
shadinginterp;
holdon;
plot3(-1000,-1000,2,,P,);text(-1000,-1000,2;light,)
500?.
0-
-500-
light
-1000-
-1500-
-2000-、'
500
O-299
-999.5
-500-1000
■1000.5
-1000-1Q01
4.以任意位置子圖形式繪制出正弦,余弦,正切和余切函數曲線。
t=linspace(-2*pi,2*pi,100);
yl=sin(t);
y2=cos(t);
y3=tan(t);
y4=cot(t);
axes('position'9[0]);
axes(*position*,[]);
Iine(t,y2/Iinestyle,,,*,,,color,/b,);
axes('position',1]);
line(t,y3,'linestyle\',,'cok)r\T);
axest^positionM0]);
line(t,y,'linestyle\'?.','color','g');
Warning:Settingmarkertypebasedon'LineStyle'property
'Marker*and'LineStyle'havebeenmadeseparateproperties
Use'Marker'propertytoremovethiswarning
5,用patch函數繪制一個填充漸變色的正五邊形。
%clearall;clc;
t=linspace(0,2*pi,6);
k=t(1:Iength(t)-1);
1
patch(sin(k),cos(k)9rand(19kngth(k))9'facecolor'/interp);
axisequal
1-
0.8■
0.6■
0.4■
0.2■
0?
-0.2-
-0.4?
-0.6■
-0.8?
-1-0.8-0.6-0.4-0.200.20.40.60.81
第十章
1,設計菜單。菜單條中含有File和Help兩個菜單項。如果現則File中的New命令,則將顯
示NewItem字樣,如果選擇File中的Open命令,則將顯示出OpenItem字樣。File中的Save
命令初始時處于禁選狀態,在選擇Help菜單項之后將此菜單項恢復成可選狀態,如果選擇
File中的Save命令,則將顯示SaveItem字樣。如果選擇File中的Exit命令,則將關閉當前
窗口。如果選擇Help中的About…命令,則將顯示HelpItem字樣,并將Save菜單設置成可
選狀態。
screen=get(O,*ScreenSize,);
W=screen(3);H=screen(4);
hf=figureCCok)rMl,l,lVPo§itioiiMl,l,*W,*HTName;菜單設計示例一
,;NumberTitle\,off;MenuBar,,'none,);
hfile=uimenu(hf,label',^File*);
hhelp=uimenu(hf,'label*,^Help*);
uimenu(hfile,label1,*&New*,'call*,'disp(uNevvItem")');
uimenu(hfile,,laber;&Open,,,cair;disp(,,OpenItem")');
hsave=uimenu(hfile,UaberZ&Save','Enable*,*ofT);
uimenu(hsave,*laber/Textfile,/call,,,kl=0;k2=l;file01;*);
uimenu(hsave/laber,'Graphicsfile','call','kl=0;k2=0;fHel0;');
uimenu(hfiIe/laber/Save&As,,'call',,disp(MSaveAsItem")');
uimenu(hfile,'label1,*&Exif,Separator,,*011',,cair,,close(hf),);
uimenu(hhelp,label',*About..J/cairjl'dispf^HelpItem,,);\,set(hsave,uEnable,\non,')*]);
4,設計一個用戶界面,其中有一個靜態文本框,一個編輯框,兩個復選框,一組單選按鈕。
在編輯框中輸入一個數,單擊按鈕,可以設置靜態文本框中的文字大小;復選框用于設置文
字是否為粗體,傾斜;單選按鈕用于設置字體的顏色。
(1)打開GUI設計窗口,添加有關圖形對象。
在命令輸入窗口輸入命令"guide”,打開設計窗口。在窗口上添加一個按鈕、一個靜態文
本框、一個編輯框、兩個復選框、一組3個單選按鈕。
(2)設置圖形對象的屬性。
設置按鈕的Siring屬性為“設置字體大小”;設置靜態文本框的Backgroundcolor屬性為白
色、String屬性為“字體大小顏色粗體傾斜”;設置編輯框的String屬性為“設置第一
個單選按鈕的String屬性為“紅色”;設置第二個單選按鈕的Siring屬性為“藍色”;設置第
三個單選按鈕的String屬性為“綠色”;設置第一個復選框的String屬性為“粗體”;設置第
二個復選框的String屬性為“傾斜”。
(3)利用位置調整工具,調整控件未知。
選中3個單選按鈕、2個復選框,設置為左對齊。
(4)保存圖形用戶界面。
(5)編寫程序
點擊按鈕的“Callback”,添加程序:
a=eval(get,'String'))
set,'FontSize',a)
點擊“紅色”單選按鈕的“Callback”,添加程序:
set,'ForegroundColor','red');
set,'Value',0);
set,'Value',0);
點擊“藍色”單選按鈕的“Callback”,添加程序:
set,'ForegroundColor','blue');
set;Value\O);
set,'Value;。);
點擊“綠色”單選按鈕的“Callback”,添加程序:
set/ForegroundColorVg*);
set,'Value',0);
set/Value',0);
點擊“粗體”復選框的“Callback”,添加程序:
if(get,'Value1)==get/Max'))
set/FontWeight'/bold*)
else
set/FontWeight'/normar)
end
點擊“傾斜”復選框的“Callback”,添加程序:
if(get(hObject,'Value')==get(hObject/Maxr))
set,'FontAngle',Italic');
else
set,'FontAngle1,'normal1);
end
untitled-IEx|
r紅色
6藍色
字體
大小r級色
顏色
粗體
偵斜
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025貴州師范大學輔導員考試試題及答案
- 2025贛州職業技術學院輔導員考試試題及答案
- 夏季溺水急救措施
- 西安聯豐迅聲信息科技有限公司招聘筆試題庫2025
- 手衛生在產科的重要性
- 2025年咨詢工程師職業考試題及答案詳解
- 綠城誠園戶型設計
- 電擊傷急救知識
- 2025年醫學影像學研究生入學考試試卷及答案
- 2025年藝術設計專業研究生入學考試試卷及答案
- T∕CACM 1085-2018 中醫治未病技術操作規范 調神益智針法預防血管性認知障礙
- 國家開放大學《園林規劃設計》形考任務1-4參考答案
- 案例研究-海洋水產養殖(海洋牧場及漁業綜合體)項目投資方案可行性
- 2025屆河南省許昌市名校高三下學期第二次模擬考試英語試題(原卷版+解析版)
- 2025中國儲備糧管理集團有限公司貴州分公司招聘22人筆試參考題庫附帶答案詳解
- 蛛網膜下腔出血介入術后護理
- 2025年臨床執業醫師考試的院前急救知識試題及答案
- 數據治理架構試題及答案
- 會考地理綜合題答題模板+簡答題歸納-2025年會考地理知識點梳理
- 廣州中小企業招工難問題研究
- 水泵工初級考試題及答案
評論
0/150
提交評論