![c语言中 x[i]=-1什么意思](http://img.oxrm.com/UploadFiles/img2018101531.jpg)
已解决问题
谷歌果果_莹用户在2015.08.06提交了关于“王牌对王牌c语言中 x[i]=-1什么意思”的提问,欢迎大家涌跃发表自己的观点。目前共有1个回答,最后更新于2025-02-14T03:42:14。给定程序中,函数fun的功能是:计算形参x所指数组中N个数的平均值(规定
所有数均为正数),将所指数组中小于平均值的**移至数组的前部,大于等于平
均值的**移至x所指数组的后部,平均值作为函数值返回,在主函数中输出平均
值和移动后的**。
例如,有10个正数:4630324061745154826,平均值为:
30.500000
移动后的输出为:3061715264632404548
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结
果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include<stdlib.h>
#include<stdio.h>
#defineN10
doublefun(double*x)
{inti,j;double**,y[N];
**=0;
/**********found**********/
for(i=0;i<N;i++)**+=x[i]/N;
for(i=j=0;i<N;i++)
if(x[i]<**){
/**********found**********/
y[j]=x[i];x[i]=-1;j++;}
i=0;
while(i<N)
{if(x[i]!=-1)y[j++]=x[i];
/**********found**********/
i++;
}
for(i=0;i<N;i++)x[i]=y[i];
return**;
}
main()
{inti;doublex[N];
for(i=0;i<N;i++){x[i]=rand()%50;printf("%4.0f",x[i]);}
printf("\n");
printf("\nThe**erageis:%f\n",fun(x));
printf("\nTheresult:\n",fun(x));
for(i=0;i<N;i++)printf("%5.0f",x[i]);
printf("\n");
}
这个程序什么意思x[i]=-1是怎么回事?
希望大家能够帮助她。详细问题描述及疑问:
给定程序中,函数fun的功能是:计算形参x所指数组中N个数的平均值(规定
所有数均为正数),将所指数组中小于平均值的**移至数组的前部,大于等于平
均值的**移至x所指数组的后部,平均值作为函数值返回,在主函数中输出平均
值和移动后的**。
例如,有10个正数:4630324061745154826,平均值为:
30.500000
移动后的输出为:3061715264632404548
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结
果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
#include<stdlib.h>
#include<stdio.h>
#defineN10
doublefun(double*x)
{inti,j;double**,y[N];
**=0;
/**********found**********/
for(i=0;i<N;i++)**+=x[i]/N;
for(i=j=0;i<N;i++)
if(x[i]<**){
/**********found**********/
y[j]=x[i];x[i]=-1;j++;}
i=0;
while(i<N)
{if(x[i]!=-1)y[j++]=x[i];
/**********found**********/
i++;
}
for(i=0;i<N;i++)x[i]=y[i];
return**;
}
main()
{inti;doublex[N];
for(i=0;i<N;i++){x[i]=rand()%50;printf("%4.0f",x[i]);}
printf("\n");
printf("\nThe**erageis:%f\n",fun(x));
printf("\nTheresult:\n",fun(x));
for(i=0;i<N;i++)printf("%5.0f",x[i]);
printf("\n");
}
这个程序什么意思x[i]=-1是怎么回事?
期待您的答案,滴水之恩,来日我当涌泉相报 !