首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
编写程序,实现矩阵(3行、3列)的转置(即行列互换)。 例如,若输入下面的矩阵: 100 200 300 400 500 600 700 800 900 则程序输出: 100 400
编写程序,实现矩阵(3行、3列)的转置(即行列互换)。 例如,若输入下面的矩阵: 100 200 300 400 500 600 700 800 900 则程序输出: 100 400
admin
2018-03-28
23
问题
编写程序,实现矩阵(3行、3列)的转置(即行列互换)。
例如,若输入下面的矩阵:
100 200 300
400 500 600
700 800 900
则程序输出:
100 400 700
200 500 800
300 600 900
注意:部分源程序在文件PROGl.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include<stdio.h>
#inCiude<conio.h>
#include <Stdlib.h>
void fun (int array[3][3])
{
}
void msin()
{
FILE * wf;
int 1,j;
int array[3][3]={{100,200,300),
{400,500,600),{700,800,900}};
system("CLS");
for(i=0 ; i<3;i++)
{for(j=0;j<3;j++)
printf("%7d",array
[j]);
printf("\n");
}
fun(array);
printf("Converted array:\n");
for(i=0;i<3;i++)
{for(j=0;j<3;j++)
printf("%7 d",array
[j]);
printf("\n");
}
/*********found*********/
wf=fopen("out.dat","w");
for(i=0;i<3;i++)
{for(j=0;j<3;j++)
fprintf(wf,"%7 d",
array
[j]);
fprintf(wf,"\n");
}
fclose(wf);
/*********found*********/
}
选项
答案
void fun (int array[3][3l) { int i,j,t; for(i=0;i<3;i++)/*将右上三角和左下三角对换,实现行列互换*/ for(j=i+l;j<3;j++) {t=array[i][j]; array[i][j]=array[j][i]; array[j][i]=t; } }
解析
要实现矩阵转置,即将右上角数组元素和左下角数组元素对换,本题通过数组元素交换方法,完成矩阵转置操作。
因为对矩阵转置后仍然存回其本身,所以只能循环矩阵中的一个角(本程序是右上半三角)。控制右上半三角的方法是在内层循环中循环变量j从i+1或i开始。
转载请注明原文地址:https://jikaoti.com/ti/sna0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
数据库系统在其内部分为三级模式,即概念模式、内模式和外模式。其中,______给出了数据库物理存储结构与物理存取方法。
有以下程序: main() { char p[]={’a’,’b’,’c’},q[]="abc"; printf("%d%d\n",sizeof(p),sizeof(q)); } 程序运行后的输出结果是 ______。
若i是int型变量,且有下面的程序段:for(i=4;i<6;i++)printf((i%2)?("**%d\n"):("##%d\n"),i);上面程序段的输出结果是______。
以下程序的输出结果是longfun(intn){longs;if(n==1||n==2)s=2;elses=n-fun(n-1);returns;}main(){printf("%ld\n",fun(
若有以下程序段:intm=0xabc,n=0xabc;m-=n;printf("%X\n",m);执行后输出结果是()。
字符串“\\\”ABCDEF\“\\”的长度是()。
对于长度为n的顺序存储的线性表,当随机插入和删除一个元素时,需平均移动元素的个数为【】。
有以下程序 #include<stdio.h> main() { FILE *fp;int i,a[6]={1,2,3,4,5,6}; fp=fopen("d3.dat","w+b"); fwrite(a.sizeof
下面程序运行后的输出结果是_____。structabc{inta,b,c;}main(){structabcs[2]={{1,2,3},{4,5,6}};intt=s[0].a
随机试题
在商业银行的经营过程中,资本金水平较高的商业银行,风险承担能力就越大。()
优质流动性资产分析包括()。
假设下图中的字母代表某种变换规则,请观察后选择填入问号处最合适的一项。()
在年末时,某企业所有损益类科目余额都是零,这能说明的是()。
浇花、除草、饲养小动物属于独立自主性教育中()的基本内容。
某工程班被派去抢修灾区路面,工程完成时,一半人数被调去救援群众,剩下的一半人数继续工作4小时后,两个新兵班被调来支援抢修,每个新兵班的效率是工程班的35%,最终比原计划提前3小时完工,请问原定几小时完工?
在一项实验中,第一组实验者摄取了大量的人造糖,第二组则没有吃糖。结果发现,吃糖的人比没有吃糖的人认知能力低。这一实验表明,人造糖中所含的某种成分会影响人的认知能力。以下哪项如果为真,最能支持上述结论?
某地乡村公路边有很多柿子园。金秋时节农民采柿子时,最后总要在树上留一些熟透的柿子。果农们说,这是留给喜鹊的食物。每到冬天,喜鹊都在果树上筑巢过冬,到春天也不飞走,整天忙着捕捉果树上的虫子,从而保证了来年柿子的丰收。从这个事例中我们受到的启示是
已知A是m×n矩阵,m<n.证明:AAT是对称阵,并且AAT正定的充要条件是r(A)=m.
以下关于软件测试原则的叙述中,不正确的是()。
最新回复
(
0
)