C从文件中加载矩阵

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3
 4 struct Matrix{
 5     int row;
 6     int col;
 7     int *mat;
 8 };
 9 /*初始化一个r行c列的矩阵*/
10 struct Matrix matrix_initialize( int r, int c )
11 {
12     struct Matrix m;
13     m.row = r;
14     m.col = c;
15     (m.mat) = (int *) malloc( sizeof(int)*(m.row)*(m.col));
16     return m;
17 }
18
19 /*打印矩阵到标准输出*/
20 void matrix_show( struct Matrix m )
21 {
22     int i,j;
23     for( i = 0; i<m.row; i++)
24     {
25         for(j = 0; j<m.col; j++)
26         {
27             printf("%d ",*(m.mat+i*(m.col)+j) );
28         }
29         printf("\n");
30     }
31 }
32
33 /*从文件加载矩阵,文件第一行为矩阵的行值和列值,以后为数据(int型)*/
34 struct Matrix* load( char *file_name, struct Matrix * pm )
35 {
36     FILE *fp;
37     if( !(fp = fopen( file_name, "r" ) ) )
38         exit(-1);
39     //struct Matrix *pm;
40     printf("loading file %s...\n",file_name);
41     fscanf(fp,"%d%d",&(pm->row),&(pm->col));
42     pm->mat = (int *) malloc(sizeof(int)*(pm->row)*(pm->col));
43     int i,j;
44     for(i=0;i<pm->row;i++)
45     {
46         for(j = 0; j < pm->col; j++)
47         {
48             if( fscanf(fp,"%d",((pm->mat)+i*(pm->col)+j)) == EOF )
49                 exit(-1);
50         }
51     }
52     fclose(fp);
53     return pm;
54 }
55
56
57 int main()
58 {
59     struct Matrix m;
60     struct Matrix *pm = &m;
61     pm = load("matrix.dat",pm);
62     matrix_show(*pm);
63     return 0;
64 }
时间: 2024-10-04 18:35:22

C从文件中加载矩阵的相关文章

在HTML文件中加载js

js加载只分为两种: 1.全局js,放在<head>标签里面,整个页面很多都用到的,它是优先加载的. 2.局部js,放在</html>结束标签以内的任何位置,它是第二加载的. 在HTML文件中加载js,布布扣,bubuko.com

七. 从文件中加载数据

从文件中加载数据有两种方法,一种是利用内置的csv模块,一种是利用第三方模块numpy import matplotlib.pyplot as plt import csv import numpy as np # csv 方法 x = [] y = [] with open('example.txt','r') as csvfile: plots = csv.reader(csvfile, delimiter=',') for row in plots: x.append(int(row[0]

Android中layout.xml文件中加载自定义的View类

<com.bn.summer.GGView3 android:layout_width="100dip" android:layout_height="114dip" android:layout_marginLeft="11dip" /> View类的实现: package com.bn.summer; import android.content.Context; import android.content.res.Resour

Cocos2d-x3.0游戏实例之《别救我》第九篇——从tmx文件中加载关卡怪物

上一篇我们已经制作好tg1.tmx文件了,现在就要使用它了. 笨木头花心贡献,啥?花心?不呢,是用心~ 转载请注明,原文地址: http://www.benmutou.com/blog/archives/944 文章来源:笨木头与游戏开发 很抱歉,我们又要新建2个类了,我已经尽力少新建类了,毕竟是教程,类越多越容易混乱. 我们要新建一个Monster类,以及一个MonsterLayer类,专门添加Monster对象. Monster类 来看看Monster.h文件: #ifndef Monste

iOS Interface Builder:在.xib文件中加载另一个.xib文件

在开发中,经常会用到一个需要重复使用的模块,比如好友列表中每个用户的展示或每条动态,这些都是相同的模版,这样我们就可以把这个部分提取出来放到一个单独的.xib中.那么提取出的.xib如何在其他.xib中使用呢? 接下来就说一下如何在.xib中加载其他的.xib.大概结构是这样的: 创建项目,项目名称叫CompositeXib 创建MainView和ChildView,ChildView将作为子View包含到MainView中. 创建完成后是这样的: 设置ChildView的Size可以自定义,去

JS文件中加载jquery.js

原文链接:http://blog.csdn.net/whatday/article/details/39553451 最近有一个需求: 1.在一个html中只能引入一个JS文件 不能有JS代码和其他JS文件的引入 2.这个JS文件中 还要引入其他的JS文件 3.所有JS功能都写在这个JS文件中 这些代码用到了jQuery相关的东东 所以这里第一个需要解决的就是怎么引入jquery.js 在网上搜索了很多方法都不太实用,由于我自己离开WEB多年 最后向朋友询问得到以下代码 1.js [javasc

QML中文件的加载(三种方法)

在这里小小总结一下QML文件中如何加载QML文件与JavaScript文件. 1.QML文件中加载JavaScript文件 语法: import <ModuleIdentifier> <Version.Number> [as <Qualiflier>] ModuleIdentifier为URL: Version.Number为版本号: Qualifier为自定义命名: 示例代码如下: Qml文件: 图一 Js文件 图二 注:将js文件引入后可直接调用里面的函数,自定义命

跟我一起学extjs5(03--项目中文件的加载过程)

跟我一起学extjs5(03--项目中文件的加载过程) 上一节中用sencha工具自动创建了一个项目,并且可以在浏览器中查看.现在我们来看看js类加载过程.如下图所示: 1?首先:浏览器中输入 localhost:1841 ,调用 index.html; <!DOCTYPE HTML> <html> <head> <meta charset="UTF-8"> <title>app</title> <!-- T

史无前例的FireFox奇怪问题:host中的common名称造成css文件无法加载

今天遭遇了一个非常非常奇怪的问题,一个css文件(common.cnblogs.com/Skins/marvin3/green.css),Firefox怎么也无法打开,一直在转圈. 而换成其它浏览器都能正常打开,百思不得其解. 后来,将host换了一个名称,由 common.cnblogs.com 改为 cdn.cnblogs.com (cdn.cnblogs.com/Skins/marvin3/green.css,换成其他名称也可以),问题就解决了. 史无前例的FireFox奇怪问题:host