编写一个函数,统计出具有n个元素的一维数组中大于等于所有元素平均值的元素个数并返回

如题所述

/*我用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);
}
温馨提示:内容为网友见解,仅供参考
第1个回答  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; '输出数组里大于等于平均值的个数
第2个回答  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);本回答被网友采纳
第3个回答  2013-11-27
我用VB现在给你做一个

编写一个函数,统计出具有n个元素的一维数组中大于等于所有元素平均值...
sum=s(a,i); \/*i表示数组元素个数*\/ printf("%d\\n",sum);}

用C++编写一个函数,统计出具有n个元素的一维数组中大于等于所有元素平 ...
int function(int array[],int n){ int i,sum=0;float average;if(n<=0) return 0;for(i=0;i<n;i++)sum+=array[i];average=(float)sum\/n;sum=0;for(i=0;i<n;i++)if(array[i]>=average)sum++;return sum;}

用JAVA编写一个函数,统计出具有n个元素的一维数组中大于等于所有元素平 ...
public static void main(String[] args){ int i;int n;int avg; \/\/平均数 int sum=0; \/\/所有数字之和 Scanner scanner = new Scanner(System.in);System.out.println("请输入你要处理的数字的个数:");n = scanner.nextInt();int[] arr = new int[n]; \/\/定义一个n位的数组 Syste...

编写一个函数,统计出具有n个元素的一维数组中大于等于所有元素平均值...
int Count (double a[],int n){ int num=0;int i;double avg;int sum=0;for (i=0;i<n;i++){ sum+=a[i];} avg=sum\/n;for(i=0;i<n;i++){ if a[i]>=avg;num++;} return num;}

...一维数组中大于等于所有元素平均值的元素的个数并返回
for(i=0;scanf("%d",&a[i])==1;i++);这句话 不对吧,你是不是当输入是1的时候,结束输入,应该改成 for(i=0;scanf("%d",a[i]) != 1;i++)

用JAVA如何编写一个函数来统计出具有n个元素的一维数组中大于等于所有...
public static void main(String[] args)。int i。int n。int avg; \/\/。int sum=0; \/\/。Scanner scanner = new Scanner(System.in)。System.out.println。n = scanner.nextInt。int[] arr = new int[n]。System.out.println。for(i = 0; i< n;i++)。System.out.print。arr[i] =...

用matlab编写一个函数,统计出具有n个元素的一维整数数组中大于等于所有...
> a=1:10;ma=mean(a);>> n=length(find(a>ma))n = 5 >> a(find(a>ma))ans = 6 7 8 9 10

...一维整数数组中大于等于所有元素平均值的元素个数。验证该函数_百度...
int main(){ const int MAX = 100;int a[MAX] = {2,3,7,8,9,10,13,21,24,27};int len = 10;int s = Fun(a, len);printf("%d\\n", s);system("pause");return 0;} int Fun(int a[], int len){ int sum = 0;for (int i=0; i<len; i++){ sum += a[i];}...

2. 编写一个函数,统计出具有n个元素的一维整数数组中大于等于所有元素平 ...
function funStatic n=100;A=fix(100*rand(n,1));%具有n个元素的一维整数数组 S=[];%大于等于所有元素平均值的元 ave=0;for i=1:n ave=ave+A(i);end ave=ave\/n;%所有元素平均值 for i=1:n if A(i)>=ave S=[S;A(i)];end end A,ave,S ...

...统计出具有n个元素的一堆数组中大于等于所有元素平均值的元素
include <stdio.h> define n 10 int main(){int i,j,s=0,a[10];float av;for(i=0;i<n;i++){scanf("%d",&a[i]);s+=a[i];} av=(float)s\/n;printf("大于平均值的有:\\n");for(i=0;i<n;i++)if(a[i]>av)printf("%d ",a[i]);printf("\\n");} ...

相似回答