
编写一个函数,统计出具有n个元素的一维数组中大于等于所有元素平均值的元素个数并返回
4个回答
2013-11-27
展开全部
/*我用C将整个程序都写下来了,呵呵,我在VC++6.0中测试过了,完全正常,
写的不好,还请高手点津,必定谦虚接受,谨慎待之,感激不敬*/
#include<stdio.h>
int s(float b[],int n){
int i,j;
float sum=0,ave; /*请勿必定义成float型可防止因不是整数时扔掉小数位*/
for(i=0;i<n;i++)
sum+=b[i]; /*此循环可求得数组元素之和*/
ave=sum/n; /*求得平均数*/
for(i=0,j=0;i<n;i++){ /*用j来储存大于平均数的个数,初使化为1*/
if(b[i]>=ave)
j++;
}
return j;
}
void main(void){
float a[100];
int i,sum;
for(i=0;scanf("%d",&a[i])==1;i++);
/*可任意输入n(n<100)个数,用空格隔开,
输入的数结束时输入一非法字符(如字母)则表示输入结束,
按回车得出结果*/
sum=s(a,i); /*i表示数组元素个数*/
printf("%d\n",sum);
}
写的不好,还请高手点津,必定谦虚接受,谨慎待之,感激不敬*/
#include<stdio.h>
int s(float b[],int n){
int i,j;
float sum=0,ave; /*请勿必定义成float型可防止因不是整数时扔掉小数位*/
for(i=0;i<n;i++)
sum+=b[i]; /*此循环可求得数组元素之和*/
ave=sum/n; /*求得平均数*/
for(i=0,j=0;i<n;i++){ /*用j来储存大于平均数的个数,初使化为1*/
if(b[i]>=ave)
j++;
}
return j;
}
void main(void){
float a[100];
int i,sum;
for(i=0;scanf("%d",&a[i])==1;i++);
/*可任意输入n(n<100)个数,用空格隔开,
输入的数结束时输入一非法字符(如字母)则表示输入结束,
按回车得出结果*/
sum=s(a,i); /*i表示数组元素个数*/
printf("%d\n",sum);
}
2013-11-27
展开全部
dim a(30),i=1,j=1,s,b; '定义变量
for i=1 to 30
s=s+a(i); '把30个数组元素都加起来
next
s=s/30 '30个数组元素的值除以30就是平均值
for j=1 to 30
if a(j)>=s then b=b+1; '大于等于平均值的就累加
next j
print b; '输出数组里大于等于平均值的个数
for i=1 to 30
s=s+a(i); '把30个数组元素都加起来
next
s=s/30 '30个数组元素的值除以30就是平均值
for j=1 to 30
if a(j)>=s then b=b+1; '大于等于平均值的就累加
next j
print b; '输出数组里大于等于平均值的个数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-11-27
展开全部
我用c给你写个
int arr[100], n, avg = 0, count = 0, i;
scanf("%d", &n);
for(i = 0; i < n; ++i) {
scanf("%d", &arr[i]);
avg += arr[i];
}
avg /= n;
for(i = 0; i < n; ++i)
if(arr[i] >= avg)
++count;
printf("count = %d\n", count);
int arr[100], n, avg = 0, count = 0, i;
scanf("%d", &n);
for(i = 0; i < n; ++i) {
scanf("%d", &arr[i]);
avg += arr[i];
}
avg /= n;
for(i = 0; i < n; ++i)
if(arr[i] >= avg)
++count;
printf("count = %d\n", count);
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-11-27
展开全部
我用VB现在给你做一个
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询