我必须通过C从文件中提取矩阵并计算它的行列式。要对任何高达3x3的矩阵执行此操作,我确定我需要知道矩阵的尺寸,但我对编程很新,所以我不知道我有什么选择。
如果我有一个带有未指定矩阵的.dat文件,我该怎么做才能找到矩阵的尺寸?
只是向正确的方向推进会很有用,因为我不知道我的选择是什么
答案 0 :(得分:1)
你可以做的就是把它们放在数组中,因为它是方阵 行数=列数 找到元素数量的平方根
通过M [i * d + j]进行访问 d是矩阵的维数r = c = d;
提示使用动态数组,即指针
答案 1 :(得分:0)
回复你的评论:
您可以通过计算\n
的数量来确定文件中的行数。
#include <stdio.h>
int main(void) {
int lines = 0;
FILE *fh;
fh = fopen("matrix.dat", "r");
int ch;
while (EOF != (ch=fgetc(fh)))
if (ch=='\n')
++lines;
fclose(fh);
printf("%d\n", lines);
return 0;
}