我需要帮助完成家庭作业。我正在编写一个程序,它读取两个带数字的输入文件(.txt文件)。这些文件将是矩阵;但我不知道如何扫描文件的第一行以确定矩阵尺寸。如果有人能帮助我,我将非常感激,以便我可以继续我的其余程序。谢谢!
答案 0 :(得分:1)
如果矩阵尺寸存储为十进制整数,请使用以下方法读取它们:
int rows, cols;
FILE *file = fopen("inputfile.txt", "r");
if (file == NULL) {
// error, cannot open the file
return 1;
}
if (fscanf(file, "%d%d", &rows, &cols) != 2) {
// error, cannot parse 2 integers
return 2;
}
如何分配矩阵并解析其内容取决于为元素指定的类型。你应该在当地寻求朋友的帮助,因为你似乎没有完成这项功课所需的技能。
编辑:在您的代码中,您应该将i
定义为int
以允许在经典读取循环中进行EOF
检测:
int i;
while ((i = fgetc(inputfileptr)) != EOF)
printf("%c", i);