如何用C语言编程求均值

有个txt文档,一二三行分别为时分秒,如21点57分50秒,第四行为数据,求相同时间点数据的平均值。只列出21点57分50秒和21点57分52秒的数据,txt文档中还有以后每隔两秒的数据。求指点!
21
57
50
7.77
21
57
50
7.79
21
57
52
7.95
21
57
52
7.95
21
57
52
7.96
每个相同时间点存在的数据个数是不一样的,如上,50秒有两个数据,而52秒就有三个了

建一个结构体链表:

typedef struct{
int Time;//时间:时分秒
int Num;//个数
double Sum;//总和
}*pData;

每次文件读取四行,然后,

时*60*60+分*60+秒,对比链表中的Time数据,

如果相等,则 Num++;Sum+=第四行数据;

如果不等,则 新建链表项目,赋值Time;赋值Num=1;赋值Sum=第四行数据;


这样,根据链表依次输出 Sum/(double)Num就可以了,这个就是平均值。

追问

时*60*60+分*60+秒 这是什么意思呢

追答

用一个整数表达时分秒,方便计算和比较。
比如:
0点0分13秒,就是13
0点5分13秒,就是5*60+13=313
1点5分13秒,就是1*3600+5*60+13=3913

追问

能给点具体程序吗,我自己写要好久,我是C语言初学,可是着急要这个结果。

追答

写出来程序,来知道让大家帮忙修改吧。
这里是帮助大家进步的地方,不代工。。。

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-10-07
搞一个结构体
struct tagData
{
int hour;
int minute;
int second;
float value;
int count;
}
用C语言IO操作,每4行一个单位追问

能具体点吗,我是新手,不太明白。

追答

我这边刚才已经写了一套调通的代码,直接把文件拖到控制台就可以在控制台看到所有时间的均值显示了.

追问

求代码!

用c语言编写一个程序,输入10个数求平均值。
c语言从键盘输入10个学生的成绩,试统计出他们的成绩总和及平均值?} average = (float)(sum\/0);printf(总分=%d,平均分=%f\\n,sum,average);} VC0下调试通过。然后在循环语句外使用(average=sum\/10)来计算10个数的平均数。按照题目的要求编写完源代码之后,点击“运行”,弹出输入页面之后,...

c语言求平均值,怎样实现?
方法一:定义一个非常大的数组,循环输入并检测输入值,累计求平均。方法二:动态数组,根据有效输入,实时扩展数组地址长度。方法三:把每个数字创建成结构体,构建链表,实现自由扩展和删除。下面我的代码是用方法二写的:include <stdio.h> include <malloc.h> int input(int **nsp);\/\/输入任意个...

怎么用C语言求平均分?
(1)键盘输入10个整数,求它们平均值。include void main(){ float a; \/\/用于存平均值 int i,x,sum=0; \/\/累加器sum清零 for(i=1;i<=10;i++)\/\/循环10次 { printf("number %d = ",i);\/\/提示输入 scanf("%d",&x);sum += x;} a=sum\/10.0;\/\/求平均值 printf("a=%f\\n"...

c语言求平均值
c语言求平均值步骤如下:1、打开Excel程序,创建一个新的工作簿或打开一个已有的工作簿。2、在工作簿中打开你要操作的工作表。你可以通过在工作簿窗口中点击工作表名称来切换工作表。3、确认你的数据已经输入到表格中。如果你还没有输入数据,请先输入你的数据。4、选择你要添加平均分列的行。你可以...

c语言如何求一组数的平均值
一、最直观的方式:1、将输入的十个数,存到数组中;2、遍历数组,找到最大值和最小值;3、从数组中将最大值和最小值移除;4、将剩余的8个数值累加,并将和值除以8,得到平均值;5、输出结果。二、优化方式:分析原始算法,需要循环多次,包括输入,查找最值,移除,累加等。针对此,可以进行...

如何用C语言编程求均值
Num;\/\/个数double Sum;\/\/总和}*pData;每次文件读取四行,然后,时*60*60+分*60+秒,对比链表中的Time数据,如果相等,则 Num++;Sum+=第四行数据;如果不等,则 新建链表项目,赋值Time;赋值Num=1;赋值Sum=第四行数据;这样,根据链表依次输出 Sum\/(double)Num就可以了,这个就是平均值。

c语言如何求一组数的平均值?
for循环键盘输入四个,累加求和,最后输出其平均数。代码示例:include <stdio.h> int main(){ float a,sum=0;int i; for(i=0;i<4;i++){ scanf("%f",&a);sum+=a;} printf("平均成绩为:%.2f\\n",sum\/4);return 0;} \/*运行结果:65 75 85 95平均成绩为:80.00*\/ ...

C语言如何输出3个数的平均值?
int main(void){ int number;int units, tens, hundreds; \/\/定义三个变量分别存储个位、十位和百位上的数字 scanf("%d", &number); \/\/读入一个三位数 hundreds = number \/ 100; \/\/ 一个三位数除以100的整数商,即百位上的数字 tens = (number % 100) \/ 10; \/\/number对100取模,得到后...

编程统计学生成绩平均值的C语言程序怎么写?
输入成绩:使用循环来输入每个学生的成绩,并将它们存储在数组中。计算平均值:遍历数组,将所有成绩相加,然后除以学生人数,得到平均值。输出结果:打印出计算出的平均值。include <stdio.h> int main() { int numStudents, i;float sum = 0.0, average;float scores[100]; \/\/ 假设最多有100个...

用C语言怎样求一个矩阵的平均值?
1、打开matlab,在命令行窗口中输入a=[12 24 35;26 78 56],创建一个2行3列的矩阵。2、在命令行窗口中输入mean(a(:)),求a矩阵所有元素的平均值。3、按回车键之后,可以看到a矩阵所有元素的平均值是 38.5000。4、如果想求矩阵每一列的平均值,输入mean(a,1)。5、如果想求矩阵每一行的...

相似回答
大家正在搜