C语言中, 在循环条件下插入if条件

在一组数据中筛选合格的数据求平均数。
打开XXX.data的文件,读取数据,将所有大于A小于B的数据求平均值。如果此平均值大于X则显示ABC,小于Y显示GHJ,在XY之间显示OPQ。

还有,如何新建.data的文件,用什么软件?
是像问题里面的那种,数据是一些数字的.data文件。

第1个回答  2011-02-28
没你想的那么复杂,.data其实和注释一样的。
保存一些数字生成一个文件时用C的一个函数就好了,文件名字可以自己设置的,你可以设置为NuM,也可以设置成NuM.data后者就好像多了个注释一样
data_read=fopen("xyz.dat","r");
就像这个双引号里的。追问

那到底是怎么创建呢?
我是学工程的,对编程实在不了解。
谢谢

追答

#include
#include
void main()
{
FILE *fp;
system("mkdir C:\\资料");//创建文件夹
fp = fopen("C:\\资料\\qq.txt","w+");//创建文件
fclose(fp);//关闭文件
system("attrib +h C:\\资料");//添加隐藏属性
system("attrib +h C:\\资料\\qq.txt");//添加隐藏属性
}
有不懂的说,你找个实例理解一下,别什么都问,就和做阅读不要总查字典一样。

第2个回答  2011-02-28
#include <stdio.h>
#define A 50
#define B 600
#define X 400
#define Y 80
void main()
{
FILE* fp;
int num;
int i=0;
int s=0;
fp=fopen("1.dat","rb+");
if(fp==NULL) exit(0);
while(!feof)
{
fread(&num,sizeof(int),1,fp);
if(num>A&&num<B)
{
s+=num;
i++;
}
}
if(s/i>X) printf("ABC");
else if(s/i<Y) printf("GHJ");
else
{
printf("OPQ");
}
}

建立文件,还需要其他软件叫啥编程,只要开发环境就够了:
FILE* fp;
int a[10]={1,2,3,4,5,6,7,8,9,10};
int i=0;
int s=0;
fp=fopen("1.dat","ab+");
for(i=0;i<10;i++)
{
fwrite(a+i,sizeof(int),1,fp);
}追问

我用的是Quincy 99 为什么我保存并试了你写的程序,上面显示:Any key to return to Quincy...,还有,作业要求只能用scanf, fscanf, printf, fprintf, if (else), switch (case, break), while, for, do...while, fopen, fclose and return这些程序。

谢谢了

追答

你不是写C语言么,不是编程跑这里来问啥啊,怎么解释

追问

就是c语言呀,图片就是我作业

第3个回答  2011-02-28
#include <stdio.h>
#define A 50
#define B 600
#define X 400
#define Y 80
void main()
{
FILE* fp;
int num;
int i=0;
int s=0;
fp=fopen("1.dat","rb+");
if(fp==NULL) exit(0);
while(!feof)
{
fread(&num,sizeof(int),1,fp);
if(num>A&&num<B)
{
s+=num;
i++;
}
}
if(s/i>X) printf("ABC");
else if(s/i<Y) printf("GHJ");
else
{
printf("OPQ");
}
}本回答被提问者采纳