我需要从包含3列数字的.dat文件中读取和打印内容。当我输入1,表示文件1时,输出是3列0.00,当输入2表示文件2时,没有输出。
到目前为止我已经
了int file, k = 0;
float img_x, img_y, img_z, num_data = 0;
FILE *img = NULL;
printf("Enter file number: ");
scanf("%int", &file);
if (file == 1)
{
img = fopen("img1.dat", "r");
}
else if (file == 2)
{
img = fopen("img2.dat", "r");
}
else
{
printf("Error opening input file \n");
return 0;
}
if (img == NULL)
{
printf("Error opening input file \n");
return 0;
}
fscanf(img, "%f", &num_data);
for (k = 1; k <= num_data; k++)
{
fscanf(img, "%f %f %f \n", &img_x, &img_y, &img_z);
printf("%4.2f ", &img_x);
printf("%4.2f ", &img_y);
printf("%4.2f\n", &img_z);
非常感谢任何帮助!