A. 如何用c語言從文本文件讀入矩陣和一個向量
首先說讀入矩陣 幾維矩陣就用幾維數組就可以
向量是用 2維數組讀取 即起始點坐標 終止點坐標
存入二進制文件可以參考這個
#include"fstream.h"
struct student
{
char name[10];
int age;
}stu1[5],stu2[5];
int main()
{
ofstream fout("c:/chengyu1.txt", ios::binary );
cout<<"please input!"<<endl;
for(int i = 0;i<5;i++)
{
cin>>stu1[i].name>>stu1[i].age;
fout.write((char *)(&stu1[i]),sizeof(stu1[i]));
}
fout.close();
ifstream fin("c:/chengyu1.txt", ios::binary );
cout<<endl<<"the result is:"<<endl;
for(i=0;i<5;i++)
{
fin.read((char *)(&stu2[i]),sizeof(stu2[i]));
cout<<stu2[i].name<<" "<<stu2[i].age<<endl;
}
fin.close();
return 0;
}
讀同理
然後 直接進行矩陣與向量乘法的運算
最後cout到一個文本文件即可
B. c語言如何從文件中讀入矩陣,存入二維數組
C++代碼:
需要手動輸入文件路徑,以及文件中每一行有幾列,讀取額數據存入一個向量專中,可視為屬二維數組。
#include
#include
#include
#include
using
namespace
std;
int
read_scanf(const
string
&filename,const
int
&cols,vector
&_vector)
//
功能:將filename
中的數據(共cols列)讀取到_vector中,_vector可視為二維數組
{
FILE
*fp=fopen(filename.c_str(),"r");
bool
flag=true;
int
i=0;
if(!fp){
cout<<"File
open
error!\n";
return
0;
}
while(flag)
{
double
*point=new
double[cols];
for(i=0;i
output_vector;
if(!read_scanf(file,columns,output_vector))return;
//output_vector可視為二維數組;輸出數組元素:
int
rows=output_vector.size();
for(int
i=0;i
評論
0
0
0
載入更多
C. C語言如何從文件中讀入矩陣和向量並實現向量乘矩陣
首先你得明白這個二進制的文件裡面的內容是怎樣排列的要不然怎麼讀。。。你可以先產生一個簡單的桁架矩陣,再試試用winHEX讀取這個二進制文件看看哪個對應哪個。然後明白了他數據是怎麼存的以後再設計演算法去讀取。