Company Document number
数学软件与数学实验考试题型示例及答案
:WTUT-WT88Y-W8BBGB-BWYTT-19998
《数学软件与数学实验》考试题型示例
一、 单项选择题
1.利用赋值语句和表达式可完成某些复杂计算,例如在MATLAB命令窗口中键入命令,Vname=sum(2.^[0:63])/+10),可计算出对应的数据,在这一语句中如果省略了变量名Vname及等号,MATLAB将用缺省变量名( )显示计算结果
A)eps; B) ans; C)NaN; D)pi 2.下面有关MATLAB变量名和函数名的说法中,错误的说法是( ) (A) 变量名的第一个字符必须是一个英文字母 (B) 变量名可由英文字母、数字和下划线混合组成 (C) 变量名不得包含空格和标点,但可以有下连字符 (D) 变量名和函数名对于英文的大小使用没有区别
3.某城市电视塔地理位置:北纬30度分,东经104度分,在MATLAB中用变量B=[30 ]表达纬度,用L=[104 ]表达经度。为了将经纬度数据转化为以度为单位的实数,下面正确的语句是( )
A)P=B(1)+B(2),Q=L(1)+ L(2); B)P = 60*B(1) + B(2),Q=60*L(1)+L(2);
C)P=B(1)+B(2)/60,Q=L(1)+L(2); D)P = B(1) + B(2)/60,Q=L(1)+L(2)/60。
4.用MATLAB随机产生一个10到20的正整数,应该使用下面的命令( )
A)60+fix(40*rand);B)10+20*rand;C)60+fix(100*rand);D)
10+round(10*rand)
5.用A、B、C表示三角形的三条边,MATLAB表示“任意两条边之和大于第三条边”的逻辑表达式正确的是( )
A) A+B>=C | A+C>=B | A+C>=B; B) A+B<=C | A+C<=B | A+C<=B; C) A+B>C | A+C>B | B+C>A; D) A+B>C & A+C>B & B+C>A; 6.在MATLAB命令窗口中,键入命令syms x; y=int(3*x)。屏幕上将出现的结果是( )
A) 3/2*x^2; B)3x^2/2; C)^2; D)*x^2;
7.在MATLAB命令窗口中,键入命令A=[1,2,3;4,5,6;7,8,0];A(1,:)*A(:,3)。屏幕上将出现的结果是( )
A)15; B)30; C)36; D)69;
8.正确表达命题A和B都大于C的逻辑表达式应该用下面哪一行( )
A) A > C; B) B>C; C) A >C & B >C; D) A >C | B >C; 9.如果已输入方阵A的数据,在MATLAB中用命令( )可计算出A的行列式的值
A)det(A); B)eig(A); C)inv(A); D)diag(A)
10.火炮发射炮弹的初始速度和发射角为已知,由此可估算出炮弹在空中的飞行时间Tfly,使用语句Tspan=Tfly*(0:20)/20,将获得一些数据,下面不正确的说法是( )
A)Tspan为包括发射时刻在内的炮弹在空间飞行的21个不同的飞行时刻;
B)Tspan中任意两个相邻数据之差的绝对值相等;
C)Tspan包含了21个数据,第一个数据为0,最后一个数据为Tfly; D)Tspan是一个等差数列,公差为Tfly/21 二、 程序阅读理解
1.解释下面程序的功能,并写出该程序所求解的数学问题
syms x y
y = dsolve('Dy=1/(1+x^2)-2*y^2','y(0) = 0','x') ezplot(y)
2.下面程序的功能是绘制一空间区域的边界曲面。写出该空间区域的数学表达式并解释下面每行命令的具体作用。
r=(0:20)/20;theta=(0:72)*pi/36; x=r'*cos(theta);y=r'*sin(theta); z1=sqrt(x.^2+y.^2); z2=1+sqrt(1-x.^2-y.^2); mesh(x,y,z1),hold on mesh(x,y,z2) axis off
3.传说古希腊曾流行瘟疫,人们为消除灾难求助于神。神说:把神庙中黄金祭台增容一倍,可消除瘟疫。当立方体祭台尺寸放大一倍后,瘟疫仍然流行。人们才知道体积并不是扩大了两倍。这个古希腊难题被称为倍立方体问题,在
人类还没有认识到无理数时,企业界企图用有限位实数表示32,就会犯下错误。数学实验程序验证了这个事实,程序运行后误差如右文本框所示 error= a=2^(1/3); D=1; for k=1:8 D=D*10; b=fix(a*D)/D; V(k)=b^3; end error=V’-2 (1) 程序中循环控制变量k从1变量8,而变量D=10k的作用是( )
(A) 将a的小数点向右移D位取整;
(B) 将a的小数点向右移D位取整后再向左移D位; (C) 将a的小数点向右移k位取整后再向左移k位; (D) 将a的小数点向左移k位取整后再向右移k位; (2) 程序中变量b存放的数据是( )
(A) 将a的小数点后第k位减1所得; (B) 将a的小数点k位后按四舍五入所得;
(C) 将a的小数点后第k位增1所得; (D) 将a的小数点k位后截断舍去所得。
三、 程序设计
1.利用ezplot命令,画函数f(x)?x2sinx2在[??,?]上的图形,写出MATLAB程序。
1?a?(an?bn)?n?122.给定非负实数 a0,b0满足a0≠b0,按递推公式? (n = 0,
?b?abnn?n?11,2,……)
产生的数列{an},{bn}称为高斯算术-几何平均数列。试写出用for-end语句计算a10和b10的MATLAB程序。例如输入数据a0=5,b0=2;输出数据a=,b= 。
3.假设一个团队有n个人(n<365),“n个人之中至少有两人生日同一天”概率列表如下
n P 30 40 50 60 编写程序模拟这一随机现象,程序功能如下:输入正整数n;产生n个1~365的随机正整数,代表n个人的生日,输出n阶矩阵A=(aij)n×n记录有两人生日相同这一事件,若第i个人与第j个人生日相同,则aij=1,否则aij=0。要求A是对称阵,且A的主对角元素为0。
四、 程序填空
1.验证“哥德巴赫猜想”:任何一个正偶数(n>=6)均可表示为两个质数之和,如6=3+3;8=3+5;10=3+7;等等。(要求:编制一个函数,(1)输入(自变量):某个正偶数,返回值(函数值):这两个质数;(2)对输入的自变量是否是正偶数要作判断,若不是输出错误信息。)
function [y z] = gd(n)
% 哥德巴赫猜想验证函数 任意正偶数都可以分解为两个质数之和 %
% 输入:
% n - 任意正偶数 % 输出: % y - 素数 % z - 素数
if % 判断输入是否为不小于6的偶数(提示:mod(m,n)命令求m除以的余数)