文件读写方式实现矩阵相乘
2013-06-01 11:33
369 查看
#include <stdio.h> const int M = 5; const int N = 4; const int L = 3; void main(){ int i = 0,j = 0,k; FILE *fp1,*fp2; int matr1[M] ,matr2 [L],matr3[M][L]; //从文本文件1中读入矩阵 printf("The array 1 is :\n"); if((fp1 = fopen("../array1.txt","r"))==NULL) { printf("Can not open file!\n"); } for (i=0;i<M;i++){ for (j=0;j<N;j++){ fscanf(fp1,"%d",&matr1[i][j]); } } for (i=0;i<M;i++){ for (j=0;j<N;j++){ printf("%d\t",matr1[i][j]); } printf("\n"); } fclose(fp1); //从文本文件2中读入矩阵 printf("The array 2 is:\n"); if((fp2 = fopen("../array2.txt","r"))==NULL) { printf("Can not open file!\n"); } for (i=0;i<N;i++){ for (j=0;j<L;j++){ fscanf(fp2,"%d",&matr2[i][j]); } } for (i=0;i<N;i++){ for (j=0;j<L;j++){ printf("%d\t",matr2[i][j]); } printf("\n"); } fclose(fp2); //实现矩阵相乘,并将结果矩阵写入新的文件 printf("The result is :\n"); FILE* fp; if((fp = fopen("../result.txt","a+"))==NULL) { printf("Can not open file!\n"); } for(i = 0;i<M;i++){ for(j = 0;j<L;j++){ matr3[i][j] = 0; for(k = 0;k<N;k++){ matr3[i][j] += matr1[i][k]*matr2[k][j]; } printf("%d\t",matr3[i][j]); } printf("\n"); } for(i = 0;i<M;i++){ for(j = 0;j<L;j++){ fprintf(fp,"%d\t",matr3[i][j]); } fputs("\n",fp); } fclose(fp); }
相关文章推荐
- Windows下,实现不使用缓存的文件读写方式
- JavaSE8基础 BufferedReader char[]方式读写实现复制粘贴txt文件
- 通过文件读写方式实现Matlab和Modelsim的联合仿真
- Linux下文件读写操作一例(C标准库函数方式实现)
- (转)通过文件读写方式实现Matlab和Modelsim的联合仿真
- 通过文件读写方式实现Matlab和Modelsim的联合仿真
- avi通过文件读写方式实现剪切、拼接(不经过解码、编码)
- [转帖]通过文件读写方式实现Matlab和Modelsim的联合仿真
- 流方式文件读写(简单实现)
- 深度学习FPGA实现基础知识19(通过文件读写方式实现Matlab和Modelsim的联合仿真)
- 通过文件读写方式实现Matlab和Modelsim的联合仿真
- 是想两个矩阵相乘(并实现文件的输入输出)
- 通过文件读写方式实现Matlab和Modelsim的联合仿真
- 用读写文件方式实现通讯录
- swing文件选取器 例子 (4种读写文件方式-和图片的读写方法)
- Java IO读写大文件的几种方式及测试
- springMVC两种方式实现多文件上传及效率比较
- 用BufferedWriter和FileWriter实现文件读写
- 【Linux】文件读写及cat命令的实现
- C#.net实现windows窗体程序对Excel文件的读写操作