用JAVA编写一个函数,统计出具有n个元素的一维数组中大于等于所有元素平均值的元素个数并返回.
5个回答
推荐于2017-07-14
展开全部
下面的这个程序能够处理n个数字,不管n是多少 /*
* @author:╰☆囖乐☆╮
*/import java.util.Scanner;public class Array {
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位的数组
System.out.println("请输入你要处理的数字:");
for(i = 0; i< n;i++){
System.out.print("第"+(i+1)+"个数字:");
arr[i] = scanner.nextInt();
}
for(n = 0;n<arr.length;n++){
sum += arr[n]; //累加
}
avg = sum/n;
System.out.println("平均数是:"+avg);
//下面将把数组中的数字与平均数比较,如果大于平均数则打印出来
System.out.println("数组中大于平均数的是:");
for(n = 0;n<arr.length;n++){
if(arr[n] > avg){
System.out.println("第"+n+"数字:"+arr[n]);
}
}
}}
* @author:╰☆囖乐☆╮
*/import java.util.Scanner;public class Array {
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位的数组
System.out.println("请输入你要处理的数字:");
for(i = 0; i< n;i++){
System.out.print("第"+(i+1)+"个数字:");
arr[i] = scanner.nextInt();
}
for(n = 0;n<arr.length;n++){
sum += arr[n]; //累加
}
avg = sum/n;
System.out.println("平均数是:"+avg);
//下面将把数组中的数字与平均数比较,如果大于平均数则打印出来
System.out.println("数组中大于平均数的是:");
for(n = 0;n<arr.length;n++){
if(arr[n] > avg){
System.out.println("第"+n+"数字:"+arr[n]);
}
}
}}
2013-08-24
展开全部
public class Test{
public static int getNum(int[] source){
int all =0;//计算总素
int length =source.length;//计算元素个数
int result =0;//用于结果计数
for(int i=0;i<length;i++)
{
all+=source[i];
}
int avg = all/length;//计算平均值
for(int i=0;i<length;i++)
{
if(source[i]>=avg)
{
result++;
}
}
return result;
}
public static void main(String[] args)
{
int [] test = {1,2,3,6,9,2,5};//测试数组
System.out.println(getNum(test));
}
}
public static int getNum(int[] source){
int all =0;//计算总素
int length =source.length;//计算元素个数
int result =0;//用于结果计数
for(int i=0;i<length;i++)
{
all+=source[i];
}
int avg = all/length;//计算平均值
for(int i=0;i<length;i++)
{
if(source[i]>=avg)
{
result++;
}
}
return result;
}
public static void main(String[] args)
{
int [] test = {1,2,3,6,9,2,5};//测试数组
System.out.println(getNum(test));
}
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
package foo;
import java.util.Arrays;
public class TestA {
public static void main(String[] args){
int[] arr={1,2,3,4,5,6,7,8,9};
int[] newarr=countAvgNumber(arr);
System.out.println(Arrays.toString(newarr));
}
public static int[] countAvgNumber(int[] arr){
//存放大于平均值的数组
int[] destarr=new int[0];
if(arr!=null&&arr.length>0){
//总值
double sum=0;
for(int x=0;x<arr.length;x++){
sum+=arr[x];
}
//平均值
double avg=sum/arr.length;
System.out.println(avg);
for(int x=0;x<arr.length;x++){
if(arr[x]>=avg){
int[] newarr=new int[destarr.length+1];
//临时数组增值
newarr[newarr.length-1]=arr[x];
//把平均值数组复制到临时数组
System.arraycopy(destarr,0,newarr,0,newarr.length-1);
//临时数组给平均值数组
destarr=newarr;
}
}
}
return destarr;
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
package baidutest;
import java.util.Arrays;
import java.util.Random;
import java.util.Scanner;
public class Baidu {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入数组长度");
int n = scan.nextInt();
int[] ary = createAry(n);
System.out.println(Arrays.toString(ary));
int count = 0,sum=0;
//求和
for(int i=0;i<ary.length;i++){
sum+=ary[i];
}
System.out.println(sum);
double avg= sum*1.0/ary.length;
//求大于平均值的个数
for(int i=0;i<ary.length;i++){
if(ary[i]>avg){
count++;
}
}
System.out.println(count);
scan.close();
}
/**
* 定义随机数组
* @param n
* @return
*/
static int[] createAry(int n){
int[] arry = new int[n];
Random rad = new Random();
for(int i=0;i<arry.length;i++){
arry[i]=rad.nextInt(100);//0~99随机数
}
return arry;
}
}
import java.util.Arrays;
import java.util.Random;
import java.util.Scanner;
public class Baidu {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入数组长度");
int n = scan.nextInt();
int[] ary = createAry(n);
System.out.println(Arrays.toString(ary));
int count = 0,sum=0;
//求和
for(int i=0;i<ary.length;i++){
sum+=ary[i];
}
System.out.println(sum);
double avg= sum*1.0/ary.length;
//求大于平均值的个数
for(int i=0;i<ary.length;i++){
if(ary[i]>avg){
count++;
}
}
System.out.println(count);
scan.close();
}
/**
* 定义随机数组
* @param n
* @return
*/
static int[] createAry(int n){
int[] arry = new int[n];
Random rad = new Random();
for(int i=0;i<arry.length;i++){
arry[i]=rad.nextInt(100);//0~99随机数
}
return arry;
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1、定义一个数组即1维数组
double[] numbers = {2,3,4,5,9,2,4,5,6,7};
2、定义一个用于存储总和的变量
double sum = 0;
3、循环遍历数组获取1维数组所有元素总和
for(int i=0;i<numbers.length;i++){
sum += numbers[i];
}
4、计算平均值,并定义一个存储满足条件的元素个数的变量
double avg = sum/numbers.length;
int num = 0;
5、循环遍历计算个数
for(int i=0;i<numbers.length;i++){
if(numbers[i]>=avg) num++;
}
6、最后返回满足条件的元素个数
return num;
double[] numbers = {2,3,4,5,9,2,4,5,6,7};
2、定义一个用于存储总和的变量
double sum = 0;
3、循环遍历数组获取1维数组所有元素总和
for(int i=0;i<numbers.length;i++){
sum += numbers[i];
}
4、计算平均值,并定义一个存储满足条件的元素个数的变量
double avg = sum/numbers.length;
int num = 0;
5、循环遍历计算个数
for(int i=0;i<numbers.length;i++){
if(numbers[i]>=avg) num++;
}
6、最后返回满足条件的元素个数
return num;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询