C语言之文件操作04——输入矩阵a,b,求乘积c,并打印a,b,c到文件
//文件与数组结合
/*
=================================================================
题目:输入矩阵a,b,求乘积c,并打印a,b,c到D盘文件x.txt,并在屏幕显示。
说明:必须满足a的列=b的行。
=================================================================
*/
#include<stdio.h>
#include<stdlib.h>
#define M 2
#define N 3
void main()
{
FILE *fp;
int a[M][N],b[N][M],c[N][N];
int i,j,k=0;
fp=fopen("D:\\x.txt","w");
if(fp==NULL)
printf("文件打开失败!
\n");
else
{
//输入矩阵a
printf("矩阵a(%dx%d):\n",M,N);
for(i=0;i<M;i++)
{
for(j=0;j<N;j++)
scanf("%d",&a[i][j]);
}
//输入矩阵b
printf("矩阵b(%dx%d):\n",N,M);
for(i=0;i<N;i++)
{
for(j=0;j<M;j++)
scanf("%d",&b[i][j]);
}
system("cls");
//输出矩阵a
printf("a=\n");
fprintf(fp,"a=\n");
for(i=0;i<M;i++)
{
for(j=0;j<N;j++)
{
printf("%3d ",a[i][j]);
fprintf(fp,"%3d ",a[i][j]);
}
fprintf(fp,"\n");
printf("\n");
}
//输出矩阵b
printf("b=\n");
fprintf(fp,"b=\n");
for(i=0;i<N;i++)
{
for(j=0;j<M;j++)
{
printf("%3d ",b[i][j]);
fprintf(fp,"%3d ",b[i][j]);
}
fprintf(fp,"\n");
printf("\n");
}
//计算矩阵c
for(i=0;i<M;i++)
{
for(j=0;j<M;j++)
{
c[i][j]=0;
for(k=0;k<N;k++)
c[i][j]+=a[i][k]*b[k][j];
}
}
//输出矩阵c
printf("c=\n");
fprintf(fp,"c=a*b=\n");
for(i=0;i<M;i++)
{
for(j=0;j<M;j++)
{
printf("%3d ",c[i][j]);
fprintf(fp,"%3d ",c[i][j]);
}
printf("\n");
fprintf(fp,"\n");
}
}
fclose(fp);
}
/*
========================================================================
评:
将文件fprintf(fp,"%3d",a[i][j])与一般文件printf相同理解就可以!
========================================================================
*/
C语言之文件操作04——输入矩阵a,b,求乘积c,并打印a,b,c到文件的更多相关文章
- Java文件操作与输入输出流
文件操作 package ch15; import java.io.*; /** * Created by Jiqing on 2016/12/28. */ public class FileTest ...
- 文件操作mode学习总结-----Python学习总结【第四篇】:Python之文件操作(文件、正则、json、pickle)
非常全的博客,防丢链接参考https://www.cnblogs.com/madsnotes/articles/5521551.html 1.文件操作 1.1 操作流程 1)文件打开 2)文件操作 3 ...
- C语言之文件操作08——总结
C程序的文件操作共涵盖7个例题,包括格式打印,文件读取,条件查找,矩阵的文件操作,数据格式输入及调用计算等内容. 文件操作使得程序有更强的拓展性,使其能够单独保存数据.这为程序的调试和优化打下了坚实的 ...
- C语言之文件操作06——写数据到文本文件遇0停止
//文件 /* =============================================================== 题目:输入10个篮球运动员的身高数据(cm)保存至D盘文 ...
- Linux C 文件操作函数(~上善止水~)
翻翻笔记,整理一下 C 语言中的文件操作函数 ~~~~~~,多注意细节,maybe 细节决定成败~ 1. fopen /* fopen(打开文件) * * 相关函数 open,fclose * * 表 ...
- Visual Studio 控制台应用程序 同时使用OpenCV和matlab mat文件操作
matalb具有灵活的图像处理,代码编写起来简洁而高效.而OpenCV具有很多成熟的计算机视觉算法,能够处理很多实时的识别处理等问题,而且代码运行起来效率很高.所以如何结合两者之间的优点,是让很多学术 ...
- 员工管理系统+字符编码+Python代码文件操作
员工管理系统+字符编码+Python代码文件操作 1.员工管理系统 1.1 debug 代码调试 1.先使用鼠标左键在需要调试的代码左边点击一下(会出现一个红点)2.之后右键点击debug运行代码 ...
- Matlab的部分文件操作
Author:Maddock Date:2015-01-20 判断文件是否存在 infilename = [str,'\lena.jpg']; sgc_exist = exist(infilename ...
- Python 第三天 文件操作(2)
文件操作 操作文件时,一般需要经历如下步骤: 打开文件 操作文件 一.打开 文件句柄 = file('文件路径', '模式') 注:python中打开文件有两种方式,即:open(...) 和 fi ...
随机推荐
- (56) 解决字段设为readonly无法保存
问题描述:当一个字段设为readonly =True 后,在form表单,即使你用onchange方法改变了值但也不能保存到数据库当时.平时在这样的要求,form表单有些字段要展示给用户,但又要达到不 ...
- HashMap导致死循环问题
虽然我推测是链表形成闭环,但 没有去证明过.从网上找了一下: http://blog.csdn.net/autoinspired/archive/2008/07/16/2662290.aspx 里面也 ...
- Mybatis解决了JDBC编程哪些问题
一:Mybatis简介 MyBatis是一个优秀的持久层框架,它对jdbc的操作数据库的过程进行封装,使开发者只需要关注 SQL 本身,而不需要花费精力去处理例如注册驱动.创建connection.创 ...
- POJ3624 Charm Bracelet 【01背包】
Charm Bracelet Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 22621 Accepted: 10157 ...
- 各种List、Map、Set的比較
前言:Java中用不同的数据结构(哈希表/动态数组/平衡树/链表)实现了不同的集合接口(List/Map/Set).大多数情况下,集合类被用于不须要线程安全地环境,所以后来的集合实现都没有再採用同步以 ...
- 阿里云server部署架构
近期要上马一个项目,客户要求所有部署到阿里云的server,做了一个阿里云的部署方案. 上图: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc21hbGx ...
- iOS KVC(Key-Value Coding)
常见用法: 获取值 valueForKey: 依据属性名取值 valueForKeyPath: 依据路径取值(如:[person valueForKeyPath:@"car.price&qu ...
- 基于redis ae实现 Linux中的文件系统监控机制(inotify)
(英文部分为转的.代码是个人代码) 1 What's inotify The inotify API provides a mechanism for monitoring file system ...
- shadowOffset 具体解释
x向右为正,y向下为正 1.y<0 UILabel *label=[[UILabelalloc] initWithFrame:CGRectMake(40,40, 250,50)]; label. ...
- swift学习第四章
// Playground - noun: a place where people can play import UIKit var age=100 //假设年龄不大于50的就会在这里断言,和之前 ...