USTC机试——将文件中矩阵转置和另一个矩阵求和后输出到另一个文件

输入文件:2.in
3 2//行列
1 2
4 5
7 8
1 2 4
5 7 8
输出文件:2.out
2 6 11
7 12 16
代码如下:
//将读出的矩阵先转置然后和另一个对应的矩阵相加输出到文件中
#include<stdio.h>
#include<string.h>
#define N 100
int main(){
	int a[N][N],b[N][N];
	//从文件中读出数据
	FILE *fp1,*fp2;
	fp1=fopen("2.in","r");
	fp2=fopen("2.out","w");
	int n,m;//行,列
	fscanf(fp1,"%d%d",&n,&m);
	for(int i=1;i<=n;i++){//读入a矩阵
		for(int j=1;j<=m;j++){
		   fscanf(fp1,"%d",&a[i][j]);
		}
	}
	for(i=1;i<=m;i++){//读入b矩阵
		for(int j=1;j<=n;j++){
		   fscanf(fp1,"%d",&b[i][j]);
		}
	}
	for(i=1;i<=m;i++){//把矩阵求和后输出到文件中
		for(int j=1;j<=n;j++){
		   fprintf(fp2,"%d ",a[j][i]+b[i][j]);
		}
		fprintf(fp2,"\n");
	}
return 0;
}

全部评论

相关推荐

07-08 13:48
门头沟学院 C++
点赞 评论 收藏
分享
流浪的神仙:无恶意,算法一般好像都得9硕才能干算法太卷啦
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务