问答题设有三个非零的n阶(n≥3)方阵A1、A2、A3,满足Ai2=Ai(i=1,2,3),且AiAj=0(i≠j,i、j=1,2,3),证明:  (1)Ai(i=1,2,3)的特征值有且仅有0和1;  (2)Ai的对应于特征值1的特征向量是Aj的对应于特征值0的特征向量(i≠j);  (3)若α(→)1、α(→)2、α(→)3分别为A1、A2、A3的对应于特征值1的特征向量,则向量组α(→)1、α(→)2、α(→)3线性无关。

问答题
设有三个非零的n阶(n≥3)方阵A1、A2、A3,满足Ai2=Ai(i=1,2,3),且AiAj=0(i≠j,i、j=1,2,3),证明:  (1)Ai(i=1,2,3)的特征值有且仅有0和1;  (2)Ai的对应于特征值1的特征向量是Aj的对应于特征值0的特征向量(i≠j);  (3)若α(→)1、α(→)2、α(→)3分别为A1、A2、A3的对应于特征值1的特征向量,则向量组α(→)1、α(→)2、α(→)3线性无关。

参考解析

解析: 暂无解析

相关考题:

下面是一个Applet程序,其功能是构造n阶魔方阵,魔方阵是这样一个方阵,它的每一行,每一列和对角线之和均相等,例如3阶魔方阵为8 1 63 5 74 9 2要求用Applet实现上述魔方阵。窗口中包括提示栏,提示输入0~15之间的奇数;输入框,输入方阵的阶数;按钮;点击则输出魔方阵;画布用于输出结果。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。注意:不改动程序的结构,不得增行或删行。源程序文件代码清单如下:import java.awt.*;import java.awt.event.*;import java.applet.Applet;import java.lang.Math.*;/*<applet code="ex10_3.class" width=800 height=400></applet>*/public class ex10_3 extends Applet implements ActionListener{Panel pane=new Panel();drawWnd dw;Label 11 = new Label("输入(0~15的奇数): ");TextField tf1 = new TextField(5);Button btn = new Button("OK");int[] [] a=new int[16] [16];int n=15;public void init(){pane.setLayout(new FlowLayout(FlowLayout.CENTER, 25,5));pane.add(11);pane.add(tf1);pane.add(btn);pane.addActionListener(this);add("North",pane);dw=new drawWnd();add("South",dw);}class drawWnd extends Canvas{drawWnd ( ){setSize(300,300);setBackground(Color.GRAY);}public void paint(Graphics g){g.setColor(Color. GREEN);for(int i=1;i<=n;i++)for(int j=1;j<=n;j++)g.drawString(Integer.toString(a[i] [j]),i*20,j*20);}}public void actionPerformed(ActionEvent ae)}try{n=Integer.parseInt (tf1.getText ());int i=1, j=1;for (i=1;i<=n;i++)for (j=1; j<=n; j++)a[i] [j]=0;j=n/2+1;a[i] [j]=1;for (int k=1; k<=n*n; k++){i--;j++;if((i<1)(j>n)){i=i+2;j--;}else{if (i<1)i=n;if (j>n)j=1;}if (a[i] [j]==0)a[i] [j]=k;else{i=i+2;j--;a[i] [j]=k;}}dw. repaint ( );}catch (NumberFormatException nfe)&n

执行下列语句后,变量n的值是______。int n=0;for(int i=1;i<=3;i++)for(int j=1;j<<=i;j++)n++;

以下程序运行后的输出结果是【13】。includestdio.hmain(){ int n[2],i,j;for(i=0;i2;i++)n[i]=0;for(i=0;i2;i++)for(j=0;j2;j++)n[j]=n[i]+1;printf("%d\n",n[1]);}

以下程序的输出结果是 ( ) main( ) { int n[3] [3],i,j; for (i=0;i<3;i+ +) for(j=0;i<3;++) n[i][j]=i+j; for(i=0;i<2;i++) for(j=0,j<2;j++) n[i+1][j+1]+=[i][j]; printf("%d\n",n[1][j]); }A.14B.0C.6D.值不确定

以下程序的输出结果是 ______。 Dim n(2,2), i, j As Integer For i = 0 To 2 For j = 0 To 2 n(i,j) = i + j Next j Next i For i = 0 To 1 For j = 0 To 1 n(i+ 1 ,j + 1) = n(i + 1,j + 1) + n(i, j) Next j Next i Print n(i, j)A.14B.0C.6D.值不确定

阅读下列C++程序和程序说明, 将应填入(n)处的字句写在答题纸的对应栏内。【说明】构造最优二叉查找树。具有n个结点的有序序列a1, a2, …, an存在于数组元素a[1]、a[2], …, a[n]之中, a[0]未被使用。结点a1, a2, …, an-1, an的查找成功的概率p1, p2, …, pn-1, pn存在于数组元素 p[1]、p[2], …, p[n—1]、p[n]之中, p[0]未用。另外, 查找失败的概率q0, q1, …, qn-1, qn存在于数组元素q[0]、p[1], …, q[n-1]、q[n]之中。算法计算的序列ai+1, ai+2,…, aj-1, aj的最优二叉查找树Tij的代价Cij存在于数组元素c[i][j]之中, Tij的根结点的序号rij存在于r[i][j]之中, 它的权值存在于w[i][j]之中。为了便于内存的动态分配, 统统使用一维数组取代二维数组。const float MAXNUM=99999. 0; //尽可能大的浮点数template<(1)>void OPtimal_Binary_Search_Tree(float p[], float q[], Type a[], int n) {float *C, *W;c=(2);w=(3);int *r;r=new int[(n+1)*(n+1)];for(i=0; i<=n; i++){ c[i*(n+1)+i]=0. 0; // 即:c[i][i]=0.0, 用一维数组表示w[i*(n+1)+i]=q[i]; // 即:w[i][i]=q[i], 用一维数组表示}int i, j, k, m, length; // m表示根结点的下标或序号, 范围为0~nfloat minimum;for(length=1; length<=n; length++) //处理的序列长度由1到nfor(i=0; i<=n-length; i++){ //i为二叉查找树Tij的起始序号j=i + length; //j为二叉查找树Tij的终止序号。如:处理序列a1a2a3时,//相应的二叉查找树为T03, i=0, 而j=3w[i*(n+1)+j]=(4);minimum =MAXMUM;for(k=i+1; k<=j; k++) //考察以ai+1、ai+2, …, ai为根的情况if((5)<minimum){ minimum=c[i*(n+1)+k-1]+c[k*(n+1)+j];m=k; }c[i*(n+1)+j]=w[i*(n+1)+j]+c[i*(n+1)+m-1]+c[m*(n+1)+j];r[i*(n+1)+j]=m; // r[i][j]=m}} //构造好的最优二叉查找树的根结点的序号在r[0][n]中

阅读以下函数说明和C语言函数,将应填入(n)处的语句写在对应栏内。【函数2.1说明】有1、2、3、4四个数字,输出由这些数字组成的互不相同且无重、复数字的三位数。【函数2.1】main(){int i,j,k;printf("\n");for((1)) /*以下为三重循环*/for(j=1; j<5;j++)for (k=1;k<5;k++){if ((2)) /*确保i, j, k 三位互不相同*/printf("%d,%d,%d\n",i,j,k);}}【函数2.2说明】计算并输出100之内的素数,每行输出10个,超过10个则换行。【函数2.2】include <stdio.h>include "math.h"define N 101main(){int i,j,line,a[N];for(i=2;i<N;i++)(3);for(i=2;i<sqrt(N);i++)for(j=i+1;j<N;j++){if(a[i]!=0a[j]!=0)if(a[j]%a[i]==0)(4);}printfC\n");for(i=2,line=0;i<N;i++){if(a[i]!=0){prinff("%5d",a[i]);(5);}if(line==10){prinff("\n");line=0;}}}

下列程序的输出结果是 #include"stdio.h" #define N 3 #define M 3 void fun(int a[M][N]) { printf("%d\n",*(a[1]+2));} main() { int a[M][N]; int i,j; for(i=0;i<M;i++) for(j=0;j<N;j++) a[i][j]=i+j-(i-j); fun(a);}A.3B.4C.5D.6

以下程序的执行结果是______。 main() { int i,j,m=O,n=0; for (i=0;i<2;i++) {for (j=0;j<2;j++) if(j>=i) m=1;n++; printf("%d\n",n); } }A.4B.2C.1D.0

有以下程序:include using namespace std;int main ( ){ int n[3],i,j,k = 2; for(i 有以下程序: #include <iostream> using namespace std; int main ( ) { int n[3],i,j,k = 2; for(i = 0;i<k;i++) n[i] = O; for(i = O;i<k;i++) { for(j = O;j<k;j++) n[j] = n[i] + 1; } cout<<n [0 ] <<end1; return 0; } 上述程序运行后,输出结果是( )。A.0B.1C.2D.3

有以下程序 main() { int n[3],i,j; for(i=0;i<3;i++)n[i]=0; for(i=0;i<2,i++) for(j=0;j<2;j++)n[j]=n[i]+1; printf("%d\n",n[1]); } 程序运行后的输出结果是( )A.2B.1C.0D.3

有以下程序main(){ int n[3],i,j; for(i=0;i3;i++) n[i]=0; for(i=0;i2;i++) for(j=0;j2;j++) n[j]=n[i]+1; printf( "%d\n",n[1]);}程序运行后的输出结果是A.2 B.1C.0 D.3

有以下程序includestdio.hmain( ){int n[2l,ij;for(i=0;i2;i++)n[i]=0;for(i=0;i2;i++)for(j=0;j2;j++)n[j]=n[i]+1;printf(”%d\n”,n[1]);}程序运行后的输出结果是________ 。

阅读以下说明和C语言程序,将应填入(n)处的字句写在对应栏内。【说明】魔方阵,又叫幻方,在我国古代称为“纵横图”。由1…N2共N2个自然数构成每行、每列及两对角线上各数之和都相等的N×N方阵,这样的方阵就叫做N阶魔方阵。顾名思义,奇阶魔方阵就是N为奇数的幻方。奇数阶魔方阵的生成方法如下:(1)第一个位置在第一行正中。(2)新位置应当处于最近一个插入位置右上方,但如果右上方位置已超出方阵上边界,则新位置取应选列的最下一个位置;如果超出右边界,则新位置取应选行的最左一个位置。(3)若最近一个插入元素为N的整数倍,则选下面一行同列上的位置为新位置。本题要求输入一个数据n,然后打印由自然数1到n2的自然数构成的魔方阵(n为奇数)。例如,当n=3时,魔方阵为:8 1 63 5 74 9 2了解其生成方法后,就可以根据此方法来写出程序了。首先设置int变量i,j,m, n。其中i标记魔方阵的行;j标记魔方阵的列;n表示魔方阵的维数,通过输入得到;通过m递加得到插入的数据。数组a[MAX][MAX]用于存放魔方阵元素。这里预定义了 MAX的大小,没有采用动态分配,在此设置为15,即最大求得15×15阶魔方阵。【程序】include <stdio.h>define MAX 15void main(){int n;int m=1;int i,j;int a[MAX][MAX];printf("Please input the rank of matrix:");scanf("%d",n);i=0;(1)while((2))a[i][j]=m;m++;i--;j++;if((m-1)%n==0 m>1){(3)j=j-1;}if(j>(n-1)) //超出上界(4)if(j>(n-1))(5)}for(i=0;i<n;i++) //输出魔方阵for(j=0;j<n;j++){if(a[i][j]/10==0)printf("%d ",a[i][j]); //对程序无影响,只是使输出的数每一列对齐elseprintf("%d ",a[i][j]);if(j==(n-1))printf("\n");}}

分析下列程序,其最终执行结果是______。 main() { int n[3],i,j,k; for(i=0;i<3;i++)n[i]=O; k=2; for(i=0;i<k;i++) for(j=0;j<k;j++) n[j]=n[i]-1; printf("%d\n",n[0]); }A.-2B.-1C.0D.-3

下列程序的输出结果是#include "stdio.h"#define N 3#define M 3void fun(int a[M][N]){ printf("%d\n",*(a[1]+2));}main(){ int a[M][N];int i,j;for(i=0;iM;i++)for(j=0;jN;j++)a[i][j]=i+j-(i-j);fun(a);}A.3B.4C.5D.6

请读程序: include main( ) { int n[2],i,j,k; { for(i=0,i 请读程序: # include<srdio.h> main( ) { int n[2],i,j,k; { for(i=0,i<2;i + + )n[i]=0; k=2; for(i=0;i<k;i+ +) {for(j=0;j<k;j+ +)n[j]=n[i]+l; print{("%d\n",n[k]); } 上面程序片段输出结果是 ( )A.不确定的值B.3C.23D.1

下列程序的输出结果是 #include"stdio.h" #define N3 #define M3 void fun(int a[M][N]) { printf("%d\n",*(a[1]+2));} main() { int a[M][N]; int i,j; for(i=0;i<M;i++) for(j=0;j<N;j++) a[i][j]=i+j-(i-j); fun(a);}A.3B.4C.5D.6

请补充main函数,该函数的功能是:输出一个N×N矩阵,要求非对角线上的元素赋值为0,对角线元素赋值为1。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在 main函数的横线上填入所编写的若干表达式或语句。试题程序:include<stdio. h>define N 10main ( ){int bb[N] [N];int i, j,n;clrscr ();printf (" \nInput n:\n");scanf ("%d", n);for (i=0; i<n; i++)for (j=0; j<n; j++){【 】;if (i==j)bb[i] [j]=【 】;if (【 】)bb[i] [j]=1;}printf(" \n***** the result ***** \n");for (i=0; i<n; i++){printf (" \n\n");for (j=0; j<n; j++)printf ("%4d",bb [i] [j] );}}

阅读以下说明和C语言程序,将应填入(n)处的字句写在答题纸的对应栏内。【说明】魔方阵,又叫幻方,在我国古代称为纵横图.由1…N2共N2个自然数构成每行、每列及两对角线上各数之和都相等的N×N方阵,这样的方阵就叫做N阶魔方阵。顾名思义,奇阶魔方阵就是N为奇数的幻方。奇数阶魔方阵的生成方法如下:(1)第一个位置在第一行正中。(2)新位置应当处于最近一个插入位置右上方,但如果右上方位置已超出方阵上边界,则新位置取应选列的最下一个位置;如果超出右边界,则新位置取应选行的最左一个位置。(3)若最近一个插入元素为N的整数倍,则选下面一行同列上的位置为新位置。本题要求输入一个数据n,然后打印由自然数1到n2的自然数构成的魔方阵(n为奇数)。例如,当n=3时,魔方阵为:816357492了解其生成方法后,就可以根据此方法来写出程序了。首先设置int变量i,j,m,n.其中i标记魔方阵的行;j标记魔方阵的列;n表示魔方阵的维数,通过输入得到;通过m递加得到插入的数据。数组a[MAX][MAX]用于存放魔方阵元素。这里预定义了MAX的大小,没有采用动态分配,在此设置为15,即最大求得15×15阶魔方阵。【程序】#include#defineMAX15voidmain(){intn;intm=1;inti,j;inta[MAX][MAX];printf(Pleaseinputtherankofmatrix:);scanf(%d,n);i=0;(1)while((2)){a[i][j]=m;m++;i--;j++;if((m-1)%n==0m1){(3)j=j-1;}if(i0)//超出上界(4)if(j(n-1))//超出右边界(5)}for(i=0;ifor(j=0;j{if(a[i][j]/10==0)printf(%d,a[i][j]);//对程序无影响,只是使输出的数每一列对齐elseprintf(%d,a[i][j]);if(j==(n-1))printf(\n);}}

下列程序的输出结果是 ( ) main( ) { int i,j,m=0,n=0; for(i=0;i<2;i+ +) for(j=0;j<2;j+ +) if(j>=i) m=1; n+ +; printf("%d\n",n); }A.4B.2C.1D.0

试题13以下程序运行后的输出结果是______.#include stdio.hmain(){ int n[2], i, j;for(i=0; i2;i++) n[i]=0;for(i=0; i2; i++)for(j=0; j2; j++) n[j]=n[i]+1;printf(“%d\n”, n[1]);}

设有 n 阶三对角矩阵 A,即非零元素都位于主对角线以及与主对角线平行且紧邻的两条对角线上,现对该矩阵进行按行压缩存储,若其压储空间用数组 B 表示,A 的元素下标从 0开始,B 的元素下标从 1 开始。已知 A[0,0]存储在 B[1],A[n-1,n-1]存储在 B[3n-2],那么非零元素 A[i,j](0≤ i<n,0≤ j<n,│i-j│≤1)存储在 B( )A.2i+j-1B.2i+jC.2i+j+1D.3i-j+1

某n阶的三对角矩阵A如下图所示,按行将元素存储在一堆数组M中,设A1,1存储在M[1],那么ai,j(IA.i+2jB.2i+jC.i+2j-2D.2i+j-2

设有 n 阶三对角矩阵A,即非零元素都位于主对角线以及与主对角线平行且紧邻的两条对 角线上,现对该矩阵进行按行压缩存储,若其压储空间用数组 B 表示,A 的元素下标从 0 开 始,B 的元素下标从 1 开始。已知 A[0,0]存储在 B[1],A[n-1,n-1]存储在 B[3n-2],那么非零元素 A[i,j](0≤iA.2i+j-1B.2i+jC.2i+j+1D.3i-j+1

生成矩阵是可逆矩阵,当Ω其中的2n个矩阵都是非零矩阵,那么存在一对I,j满足什么等式成立?()A、Ai=AjB、Ai+Aj=1C、Ai+Aj=-1D、AiAj=1

单选题有以下程序: #include #defineN4 voidfun(inta[][N]) {  intb[N][N],i,j;  for(i=0;i   for(j=0;j    b[i][j]=a[N-1-j][i];  for(i=0;i   for(j=0;j    a[i][j]=b[i][j]; } main() {  intx[N][N]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}},i;  fun(x);  fun(x);  for(i=0;i   printf("%d,",x[i][i]);  printf(""); } 程序的运行结果是(  )。A16,11,6,1,B1,6,11,16,C4,7,10,13,D13,10,7,4,