-1
我需要家庭作业帮助。我正在编写一个程序,用于读取两个带有数字(.txt文件)的输入文件。这些文件将是矩阵;但我不知道如何扫描文件的第一行来确定矩阵的尺寸。如果有人能帮助我,我将不胜感激,这样我就可以继续我的其他计划。谢谢!扫描第一行.txt文件以确定矩阵尺寸
我需要家庭作业帮助。我正在编写一个程序,用于读取两个带有数字(.txt文件)的输入文件。这些文件将是矩阵;但我不知道如何扫描文件的第一行来确定矩阵的尺寸。如果有人能帮助我,我将不胜感激,这样我就可以继续我的其他计划。谢谢!扫描第一行.txt文件以确定矩阵尺寸
如果矩阵尺寸存储为十进制整数,这个阅读:
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);
@SBrg:请问为什么你不再接受这个答案? – chqrlie
使用'fscanf' ... – BLUEPIXY
欢迎堆栈溢出。您能否上传迄今为止您所拥有的相关样本?我鼓励你参加[tour](http://stackoverflow.com/tour)并访问[help center](http://stackoverflow.com/help)获取有关询问[好问题](http: //stackoverflow.com/help/how-to-ask)在这个网站上。 – McMath
感谢您的帮助!我已经上传了一些我有的东西。 txt文件中的数字为:3 3新行1 2 3新行4 5 6新行7 8 9.开头的3 3假设为矩阵的维数。 – SBrg