由高斯消去法说明当Δi≠0(i=1,2,...,n-1)时,则A=LU,其中L为单位下三角阵,U为上三角阵。
第1题:
( 7 )已知数组 a 中的元素个数为 n ,下列语句的作用是将下标为 i 的元素移动到下标为i - 1 的单元,其中 1 ≤ i < n 。例如,当 n = 4 , a 中原有数据为 1 , 2 , 3 , 4 时,则移动后 a 中元素变为 2 ,3 , 4 , 4 。请将语句补充完整:for (int i=0; i a[i] = a[ 【 7 】 ];
第2题:
若把A分解成一个下三角阵L和一个单位上三角阵U的乘积,称为克洛特(Crout)分解。()
第3题:
● 已知对称矩阵 An*n(Ai,j=Aj,i)的主对角线元素全部为0,若用一维数组B 仅存储矩阵 A 的下三角区域的所有元素(不包括主对角线元素),则数组 B的大小为(40)。
(40)
A.n(n-1)
B.n2/2
C.n(n-1)/2
D.n(n+1)/2
第4题:
●设下三角矩阵(上三角部分的元素值都为 0)A[0..n,0..n]如下所示,将该三角矩阵的所有非零元素(即行下标不小于列下标的元素)按行优先压缩存储在容量足够大的数组M[ ]中(下标从1 开始),则元素 A[I,j](O≤i≤n,j≤i)存储在数组M 的 (57) 中。
第5题:
此题为判断题(对,错)。
第6题:
此题为判断题(对,错)。
第7题:
将非奇异阵A分解成一个下三角阵L和一个上三角阵U的乘积:A=LU称为对矩阵A的三角分解。()
第8题:
●试题三
阅读下列函数说明和C代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
函数move(int*a,int n)用于整理数组a[]的前n个元素,使其中小于0的元素移到数组的前端,大于0的元素移到数组的后端,等于0的元素留在数表中间。
令a[0]~a[low-1]小于0(初始为空);a[low]~a[i-1]等于0(初始为空);a[i]~a[high]还未考察,当前考察元素为a[i]。a[high+1]~a[n-1]大于0(初始为空)。
【函数】
move(int*a,int n)
{
int i,low,high,t;
low=i=0;high=n-1;
while( (1) )
if(a[i]<0)
{
t=a[i];a[i]=a[low];a[low]=t;
(2) ;i++;
}
else if( (3) )
{t=a[i];a[i]=a[high];a[high]=t;
(4) ;
}
else (5) ;
}
●试题三
【答案】(1)i<=high(2)low++(3)a[i]>0(4)high--(5)i++
【解析】程序的说明已经对程序的功能和相关变量解释得很清楚了,这儿就不再重复了。由变量i、变量low和变量high的含义和初值可以判断,i至high之间的元素还未处理,因此while循环条件是"i<=high"或其等价形式,这就是(1)空所填写的内容。
(2)空所在语句块是处理当a[i]<0的情况,显然这时需要将a[i]与a[low]进行交换,交换后需要将i和low都要向后移动,因此(2)空处应填写"low++"或其等价形式。
(3)空需要填写执行(4)空所在语句块的条件,由(4)空所在语句块的可以判断,它是处理当a[i]>0的情况,因此(3)空处应填写"a[i]>0"或其等价形式。当a[i]>0时,需要将a[i]与a[high]进行交换,交换后需要将high都要向前移动,因此(4)空处应填写"high--"或其等价形式。注意这时i不能向后移动,因为交换后的a[i]还没有处理,需要循环的下一趟进行处理。
当a[i]=0情况,当a[i]=0时,不需要进行元素交换,只需将i向后移动就可以了,因此(5)空处应填写"i++"或其等价形式。
第9题:
在一个堆的顺序存储中,若一个元素的下标为i(0≤i≤n-1),则它的左孩子元素的下标为【 】。
第10题:
设X~N(μ,σ2),σ未知,xi为样本(i=1,2,…,n),H0:μ=μ0,Hi:μ≠μ0,a为显著性水平,则接受域为( )。
A.t<t1-a(n-1)
B.t>ta(n-1)
C.
D.以上都不对