C语言编程,变量赋值

一个文件里第一行是变量,第二行是对应变量的数值,用C语言编程赋值。例如:minmaxladhuvdiehow2.13.45.37.37.43.5中间都是空格要求是能运行的... 一个文件里第一行是变量,第二行是对应变量的数值,用C语言编程赋值。

例如:
min max lad huv die how
2.1 3.4 5.3 7.3 7.4 3.5
中间都是空格
要求是能运行的,文件名字随便
展开
 我来答
benben239
2014-11-19 · TA获得超过864个赞
知道小有建树答主
回答量:612
采纳率:100%
帮助的人:487万
展开全部
#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;
}

更多追问追答
追问
原谅我没说清楚,你事先是不知道文件里这些个变量的名字和数量的。
追答
不知道里面变量的名字
写程序的时候怎么写变量呢
匿名用户
2014-11-19
展开全部
#include<stdio.h>
int main()
{
FILE* file;
char varn[30][30];
double var[30];
char ch;
int i=0,j=0;
file=fopen("123.txt","r"); //当前工作目录
while((ch=fgetc(file))!=10)
{
ungetc(ch,file);
fscanf(file,"%s",varn[i++]);
}
while(fscanf(file,"%lf",&var[j++])!=-1);
for(int i=0;i<j-1;i++)
printf("%s=%.1lf\n",varn[i],var[i]);
return 0;
}
追问
两个while后语句怎么理解,还有ungetc是什么指令
追答
当没有读取到回车时就继续读取。把刚刚提取的字符退回流中。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
陈忆夕叫铭昔
2014-11-19 · TA获得超过139个赞
知道小有建树答主
回答量:140
采纳率:0%
帮助的人:74.8万
展开全部
#include <stdio.h>

int main()
{
double min=2.1,max=3.4,lad=5.3,huv=7.3,die=7.4,how=3.5
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式