- 1、本文档共2页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2012计算机二级上级类型题--矩阵
矩阵1. 程序填空
给定程序中,函数fun的功能是:有N×N矩阵,根据给定的m(m=n)值,将每行元素中的值均右移m个位置,左边值为0.
第1处 for(i=0;iN;i++)
第2处t[i][j+m]=t[i][j];
第3处 for(j=0;jm;j++)
1. 程序填空
给定程序中,函数fun的功能是:将a所指的3×5矩阵中第k列的元素左移到第0列,第k列以后的每列元素行依次左移,原来左边的各列依次绕到右边。
第1处for(p=1;p=k;p++)
第2处for(j=0;jN-1;j++)
a[i][j]=a[i][j+1];
第3处 a[i][N-1]=temp;
1. 程序填空
给定程序中,函数fun的功能是:a所指4×3矩阵中第k行的元素与第0行元素交换。例如:有下列矩阵
2 3
4 5 6
7 8 9
10 11 12
若k为2,程序执行结果为
7 8 9
4 5 6
1 2 3
10 11 12
第一处 void fun(int (*a)[N],int k)
第二处 for(i=0;iN;i++)
第三处 a[0][i]=a[k][i];
1. 程序填空
给定程序中,函数fun的功能是建立一个N×N的矩阵。矩阵元素的构成规律是:最外层元素的值全部是1;从外向内第二层元素的值全部为2;第三层元素的值全部是3,…依此类推。
第一处void fun(int(*a)[N])
第二处for(j=i;jN-i;j++)
第二处a[k][i]=a[k][N-i-1]=i+1;
1. 程序填空
给定程序中,函数fun的功能是:计算N*N矩阵的主对角线元素和方向对角线元素之和,并作为函数值返回。注意:要求先累加主对角线元素中的值,然后累加反响对角线元素的值。
第一处 sum=0;
第二处 sum+=t[i][i];
1. 程序填空
给定程序中,函数fun的功能是:有N*N矩阵,将矩阵的外围元素顺时针旋转。操作的顺序是:首先将第一行元素的值存入临时数组r,然后使第一列成为第一行,最后一行成为第一列,最后一列成为第一行,临时数组中和元素成为最后一列。
第一处 t[0][N-j-1]=t[j][0];
第二处 for(j=N-1;j=0;j--)
第三处 t[j][N-1]=r[j];
1 程序填空
给定程序中,函数fun的功能是:判定形参a所指的N乘以N(规定N为奇数)的矩阵是否是“幻方”,若是,函数返回值是1;不是,函数返回值为0.“幻方”的判定条件是:矩阵每行、每列、主对角线及反对角线上元素之和都相等。
第1处row=colum=0;
第2处
if((row!=colum)││(row!=m1))return 0;
第3处return 1;
1 程序填空
给定程序中,函数fun的功能是:将N乘以N矩阵中元素的值按列右移一个位置,右边被移出矩阵的元素绕回左边。
第1处for(i=0;iN;i++)
第2处x=t[i][N-1];
第3处t[i][0]=x;
1 程序填空
给定程序中,函数fun的功能是:有N×N矩阵,以主对角线为对称线,对称元素相加并将结果存放在左下三角元素中,右上三角元素来。
第1处 void fun (int) (*t)[N]
第2处 t[i][j]=t[i][j]+t[j][i];
第3处 t[j][i]=0;
1程序填空
给定程序中,函数fun的功能是:将N×N矩阵主对角线元素中的值与反向对角线对应位置上元素中的值进行交换。例如:若N=3有下列矩阵:
1 2 3
4 5 6
7 8 9
交换后:
3 2 1
4 5 6
9 8 7
第1处 void fun (int t [] [N], int n)
第2处 for (i=0; in; i++)
第3处 t [i] [n-i-1]=s;
程序修改
给定程序MODI1.C中函数fun的功能是:先从键盘上输入一个3行3列矩阵的各个元素的值,然后输出主对角线元素之和。
/**found**/
sum=0
/**found**/
scanf (%d , a [ i ] [ j ]) ;
程序设计
编写程序,实现矩阵(3行3列)的转置(即行列互换)
int fun ( int array[3] [3])
{
int i, j, arr [3] [3];
memcpy(arr,array,9*sizeof(int) );
for ( i=0; i3; i++)
for ( j=0; j3; j++)
array [ i
文档评论(0)