①目标
求N个正数的平均值av?
并求其中小于且最接近平均值的数p?
~
②命令行
#include<stdio.h>
#include<stdlib.h>
#define N 10
~
③定义函数
double fun(double x[
double* av)
{int ij;
double *av;
s=0;
for(i=0;i<N;i++)s=s+x[i
;
/*先求和x[i
是把新元素依次加上的意思*/
*av=s/N;
/*再求平均值总和除以个数*/
d=999;
/*偏移量初始值取999 , >49 , 肯定大于任何一个元素 , 保证*av-x[i
<=d顺利执行 。 */
for(i=0;i<N;i++)if(x[i
<*av&&*av-x[i
<=d)
/*条件是x[i
小于平均值 , 且最接近平均值 , 即偏移量d趋近于0 。 */
{d=*av-x[i
;
/*更新偏移量d每找到一个小于平均值的数 , 就将其与平均值的差 , 作为新的偏移量 , 直到最小 , 所以初始d=999没关系 , 重点是趋势 。 */
j=i;
/*因为x[i
是不断变化的 , 所以求出小于且最接近平均值的数 , 将其下表赋值给j储存固定下来 。 */
return x[j
;
~
④主函数(调用)
viod main( )
{int i;
double x[N
avp;
for(i=0;i<N;i++){x[i
=rand()%50;printf(\"%4.0f\"x[i
);
/*x[i
在0至49取随机数 , 所以偏移量d大于49即可启动条件语句 。 */
printf(\"\\");
p=fun(x&av);
/*p就是函数值 , 即小于且最接近平均值的x[j
。 */
printf(\"\ the average is :%f\\"av);
printf(\"p=%5.1f\"p);
【c语言|C语言-平均值最小偏移量】printf(\"\\");
- 金融服务|C语言-平均值最小偏移量
- c语言|苹果将在秋季推出配备 MagSafe 充电功能的新款 M2 iPad Pro
- 戴尔|戴尔发布世界最小工作站:1.48公斤、RTX A1000专业卡
- 芯片|华硕灵耀14轻薄本蓄势待发,全新设计语言或再掀一波国潮热!
- 编程|有内测程序员爆:华为新编程语言仓颉不是中文编程
- 微信|【机器学习】Python编程语言的优势
- Python|【机器学习】Python编程语言的优势
- c语言|C语言-二维数组补0
- 华为|华硕灵耀14轻薄本蓄势待发,全新设计语言或再掀一波国潮热!
- 搞多模态不了解最新进展?中科院自动化所撰文首个视觉-语言预训练综述