#include<stdio.h>
#include<string.h>
#define NUM 6//变量数量
int main()
{
int i;
char name[NUM][10];
FILE *fp = fopen("D:\\data.txt", "r");
float min, max, lad, huv, die, how, temp;
if (fp == NULL)
{
perror("Open file failure !!\n");
return 0;
}
for (i = 0; i < NUM; ++i)
fscanf(fp, "%s", name[i]);
for (i = 0; i < NUM; ++i)
{
fscanf(fp, "%f", &temp);
if (!strcmp(name[i], "min"))
min = temp;
else if (!strcmp(name[i], "max"))
max = temp;
else if (!strcmp(name[i], "lad"))
lad = temp;
else if (!strcmp(name[i], "huv"))
huv = temp;
else if (!strcmp(name[i], "die"))
die = temp;
else if (!strcmp(name[i], "how"))
how = temp;
}
printf("%min = %0.2f\nmax = %0.2f\nlad = %0.2f\nhuv = %0.2f\ndie = %0.2f\nhow = %0.2f\n", min, max, lad, huv, die, how);
fclose(fp);
return 0;
}
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/5d6034a85edf8db15b1a423d0a23dd54564e74b6?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
追问原谅我没说清楚,你事先是不知道文件里这些个变量的名字和数量的。
追答不知道里面变量的名字
写程序的时候怎么写变量呢
追问不用写变量啊,变量是字母,你就直接识别,赋值后输出就行。
追答#include<stdio.h>
#include<string.h>
int main()
{
int i;
char name[100];
FILE *fp = fopen("D:\\data.txt", "r");
float temp;
if (fp == NULL)
{
perror("Open file failure !!\n");
return 0;
}
fgets(name, 100, fp);
for (i = 0; fscanf(fp, "%f", &temp) && name[i]; ++i)
{
while (name[i] != ' ' && name[i] != '\n')
putchar(name[i++]);
printf(" = %0.1f\n", temp);
}
fclose(fp);
return 0;
}
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/6a600c338744ebf8f9ef3466daf9d72a6159a7c9?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
追问这样子的话,如果调用min,此时,min是没有数值的吧
追答我没听懂你说什么,没有变量Min,他只是字符串
追问你说的字符串就是我说的变量,因为后面的程序要调用这些个变量(字符串),同时它得有值,或者说它占的空间存储的是下面对应的数值,这样说应该就比较清楚了。