首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.C。在此程序中,编写程序,实现矩阵(3行、3列)的转置(即行列互换)。 例如,若输入下面的矩阵: 100 200 300 400 500 6
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.C。在此程序中,编写程序,实现矩阵(3行、3列)的转置(即行列互换)。 例如,若输入下面的矩阵: 100 200 300 400 500 6
admin
2018-08-11
66
问题
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.C。在此程序中,编写程序,实现矩阵(3行、3列)的转置(即行列互换)。
例如,若输入下面的矩阵:
100 200 300
400 500 600
700 800 900
则程序输出:
100 400 700
200 500 800
300 600 900
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
void fun(int array[3][3])
{
}
void main()
{
FILE*wf;
int i,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("%7d",array
[j]);
printf("\n");
}
/*********found*********/
wf=fopen("out.dat","w");
for(i=0;i<3;i++)
{for(j=0;j<3;j++)
fprintf(wf,"%7d",
array
[j]);
fprintf(wf,"\n");
}
fclose(wf);
/*********found*********/
}
选项
答案
void fun(int array[3][3]) { int i,j,t; for(i=0;i<3;i++)/*将右上三角和左下三角对换,实现行列互换*/ for(j=i+1;j<3;j++) {t=array[i][j]; array[i][j]=array[j][i]; array[j][i]=t; } }
解析
要实现矩阵转置,即将右上角数组元素和左下角数组元素对换,本题通过数组元素交换方法,完成矩阵转置操作。
因为对矩阵转置后仍然存回其本身,所以只能循环矩阵中的一个角(本程序是右上半三角)。控制右上半三角的方法是在内层循环中循环变量j从i+1或i开始。
转载请注明原文地址:https://kaotiyun.com/show/PVxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序的输出结果是main(){charc=’z’;printf("%c",c-25);}
两次运行下列的程序,如果从键盘上分别输入3和1,则输出结果是()。main(){intx;scanf("%d",&x);if(x++>2)printf("%d",x);els
数据的存储结构是指()
以下程序的输出结果是【】。floatfun(intx,inty){return(x+y);}main(){inta=2,b=5,c=8;printf("%3.0f\n",fun((int)fun
有下列程序:#include"stdio.h"main(){intx=0;inty=0;while(x<7&&++y){y--;x++;}pri
完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例的测试方法是()
已定义ch为字符型变量,以下赋值语句中错误的是()。
语句:x++;、++x;、x=x+1;、x=1+x;,执行后都使变量x中的值增1,请写出一条同一功能的赋值语句(不得与列举的相同)【】。
当用户要求输入的字符串中含有空格时,应使用的输入函数是
静态测试是一种重要的测试方式,可以发现30%到70%的逻辑设计和编码错误。下面()不属于静态测试?
随机试题
对于说明语句int*dl,a[100];后续程序不允许出现的语句是()。
药物消除的零级动力学是指:
糖皮质激素隔日清晨一次给药法可避免
下注于气街,并下行于足的气是()
A、外感风寒,内伤湿滞的感冒B、感受秽恶痰浊之邪所致的中暑C、暑湿蕴结所致的湿温D、中暑发热、气津两伤E、暑邪挟湿所致的发热身倦清暑益气丸的主治是
由于保证合同是依附于主合同的从属合同,因此,当破产企业作为债务人与债权人签订的和解协议规定破产企业的债务一律减免20%时,债务人的保证人也应按和解协议的约定相应调整其应承担的保证责任。()
“知屋漏者在宇下,知政失者在草野”。是的,如果主政者井蛙观天,孤陋寡闻,视世情必__________.察时势则__________,一不小心就会压抑活力,积攒怨气。填入划横线部分最恰当的一项是:
所有人可以在所有物上设定抵押权体现了所有权的特征是()。
BecausetheEarth’scrustismoresolidthereandthusbetterabletotransmitshockwaves,anearthquakeofagivenmagnitudet
财政政策是指()。
最新回复
(
0
)