java链表求平均值和方差_用c语言链表求n个数的均值和标准差
匿名用户
1级
2015-06-15 回答
//解决问题的思路
//1. 建立数学模型
// 均值avg = (a1+a2+...an)/n
// 标准差sd^2 = [(a1-avg)^2 + (a2-ave)^2+...+(an-avg)^2)] / n
//2. 定义结构体
//3. 建立和初始化链表
//4. 编写对于对象的各个函数
// listlen()返回当前链表中元素是多少个
// listavg()返回当前链表中元素的平均值
// stdeva()返回当前链表的标准方差
// push()将节点node加入链表头
// print()打印当前链表内的所有值
#include
#include
#include
typedef struct node * Node;
typedef struct node * List;
struct node
{
double value;
Node next;
};
int listlen(List list)
{
int len = 0;
for( list = list -> next; list != NULL; list = list -> next)
len++;
return len;
}
double listavg(List list)
{
double sum = 0;
Node curr = list;
for (curr = curr ->next; curr != NULL; curr = curr -> next )
sum += curr->value;
return (sum / (double)listlen(list));
}
double stdeva(List list)
{
double stdeva = 0;
double avg = listavg(list);
Node curr = list;
for (curr = curr->next; curr != NULL; curr = curr ->next)
stdeva += (curr -> value - avg) * (curr -> value - avg);
stdeva = sqrt(stdeva / listlen(list));
return stdeva;
}
void push(List list, Node node)
{
node->next = list->next;
list->next = node;
}
void print(List list)
{
for (list = list -> next; list != NULL; list = list ->next )
printf("%lf\n", list->value );
}
int main()
{
List list;
list = (List)malloc(sizeof(List));
// init list
// dummy head, null tail
list->next = NULL;
//input value into the list;
int n;
int i;
double temp;
printf("Pls input the n first:\n");
scanf("%d", &n);
printf("Pls input %d numbers\n",n);
for(i = 0; i
{
scanf("%lf",&temp);
//create new node;
Node new;
new = (Node)malloc(sizeof(Node));
if(new == NULL)
printf("Fail to locate storage!\n");
new -> value = temp;
push(list, new);
}
//output
print(list);
printf("List length is %d\n", listlen(list));
printf("The average is %lf.\n", listavg(list));
printf("The SD is %lf.\n",stdeva(list));
return 0;
}
java链表求平均值和方差_用c语言链表求n个数的均值和标准差相关推荐
- php求平均值的函数_最全计算机二级函数关键知识点汇总整理!
小编在校大学生,一年自学通过六个证,现开办自己的软件图书专营部.以学生价专业提供各省 初级会计.中级会计.注册会计师.管会.全国计算机二级.英语四六级.银行从业.证券从业.基金从业.期货从业.税务师. ...
- c语言求平均值 保留三位小数,Excel求平均值时,保留小数位数与参与求平均值的个数有关...
在 Excel 中,求平均值用Average函数:它可分用快捷键求平均值.自动求平均值和输入公式求平均值,其中用快捷键求平均值速度最快,并且三种方法都可以对行列.任意单元格.指定区域甚至整个表格求平均 ...
- php求平均值的函数_国二常用函数(二)
二.统计函数 1.Count函数:统计单元格的个数,参数必须是数值. 函数格式:=Count(数值 1,数值 2,-) 应用举例说明: =COUNT(B1:B10)表示统计单元格区域B1到B10中包含 ...
- php求平均值的函数_剔除两侧极值求平均Excel公式 去掉最大值最小值
在一些竞赛活动中,经常看到裁判现场打分的情况,为了保证竞赛公平,通常在所有裁判给出的分数中去掉一个或几个最高和最低分,然后用剩余的分数取平均得到参赛选手的最后得分. 这一点在Excel中用TRIMME ...
- mysql数据库求平均值的函数_使用MySQL中的AVG函数求平均值的教程
MySQL的AVG函数是用来求出各种记录中的字段的平均值. 要了解AVG功能考虑EMPLOYEE_TBL表具有以下记录: mysql> SELECT * FROM employee_tbl; + ...
- java求学生的总分和平均分_c语言中求课程总分、平均分。学生总分及平均分
c语言中求课程总分.平均分.学生总分及平均分 1. #include stdio.h int main(void) { int i, j; int a[6][2]; puts("please ...
- c语言中阶乘相加怎么表示_用C语言怎样求阶乘之和?
用C语言怎样求阶乘之和?以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 用C语言怎样求阶乘之和? 思路 编个函数求n的阶 ...
- C语言求35 45的最大公约数,C语言怎么求最大公约数和最小公倍数
#3 段梦超2009-12-20 21:31 输入两个正整数m和n, 求其最大公约数和最小公倍数. <1> 用辗转相除法求最大公约数 算法描述: m对n求余为a, 若a不等于0 则 m 最 ...
- c语言中ax2 bx c求两个实根编程,【c语言】求方程式 ax^2+bx+c=零 的根,分别考虑:1、有两个不等的实根 2、有两个相等的实根...
[c语言]求方程式 ax^2+bx+c=0 的根,分别考虑:1.有两个不等的实根 2.有两个相等的实根 // 求方程式 ax^2+bx+c=0 的根,分别考虑:1.有两个不等的实根 2.有两个相等的实 ...
最新文章
- Matlab与线性代数--广义逆矩阵
- 30个免费网页图标字体以及使用方法
- 【sprinb-boot】@ComponentScan 使用
- Dapr牵手.NET学习笔记:开篇
- jsf入门实例_JSF selectManyListBox示例教程
- Keli 编译遇到 *** FATAL ERROR L250: CODE SIZE LIMIT IN RESTRICTED VERSION EXCEEDED且已经破解
- 南邮JAVA程序设计实验3 流处理程序设计
- 4.1深度优先遍历的迭代方式
- Windows7下安装sql2000个人版(可用,本人已测)
- [Maven实战-许晓斌]-[第三章] Mave使用入门二(在IDE中的使用) [第四章] 案例的背景介绍...
- 中考计算机考键盘,信息技术中考键盘常识复习讲座.ppt
- 世界十大经典汽车赛道盘点
- 办公室白墙文化墙设计_流行文化如何帮助我设计
- vs2013 调试出现error LNK1104: 无法打开文件“libprotocd.lib”
- 成都java培训好习惯的养成
- Informatica基础系列(一)——Helloworld
- jquery中.eq()与:eq()的区别
- 禁用计算机系统错误汇报,如何关闭电脑发送错误报告的弹窗
- 用WCAT进行IIS压力测试 (转贴)
- 用友华表Cell一些用法小结(cs.net版本)
热门文章
- C语言基础知识总结大全(建议收藏)
- java一个意想不到的工具类 StringUtils
- 安卓反编译入门03-dex2jar反编译apk得到Java源代码
- 大学物理实验长度的测量实验报告_大学物理实验报告长度测量.doc
- 人脸识别系列(一):DeepFace
- 大唐电信java笔试题及答案
- 七、数据结构与算法——软考软件设计师
- pandas写入字典,或者pandas以各种格式输出数据
- 2021年中国邮政行业运行情况分析:业务总收入为12642.3亿元,同比增长14.5%[图]
- AutoCAD:解决填充显示填充密度不一样的问题