java中函数,数组,排序代码

1:给定一个int类型的数组,要求:
     1.求和
     2.求平均数(int)
     3.求最大值,最小值
     4.打印这个数组中数据

package li.xiao.feng2;



import java.util.Scanner;


public class int_array 
{
   
static int  max,min;
public static void main(String[] args)
{


Scanner input=new Scanner(System.in);

int a[],n,sum=0;
double average=0;
System.out.println("请输入数组元素个数");
n=input.nextInt();
   a=new int[n];
System.out.println("请输入数组元素");
for (int i = 0; i < a.length; i++)
{
a[i]=input.nextInt();
}
System.out.println("该数组为:");
for (int i = 0; i < a.length; i++)
{
System.out.print(a[i]+" ");
}
sum=sum_array(a, n);
max_min( a, n);
average=sum/(n*1.0);
System.out.println("\n数组元素的总和为:"+sum);
System.out.println("数组元素的平均数为:"+average);
System.out.println("数组元素的最大值,最小值分别为:"+max+"  "+min);
input.close();
}
static   int    sum_array(int a[],int n)
{
int sum=0;
for (int j = 0; j < a.length; j++) 
{
sum=sum+a[j];
}
 return sum;
}

static void max_min(int a[],int n)
{
max=min=a[0];
for (int i = 1; i < a.length; i++) 
{
if(a[i]>max)
max=a[i];
if(a[i] min=a[i];
}
}


}


2:给定两个整型数组a和b,找出其共同元素。
   eg:int[] a={23,12,45,11};
   int[] b={99,33,12,45,67,11}
   要找出:12,45,11
package li.xiao.feng2;


import java.util.Scanner;


public class find_common
{


public static void main(String[] args) 
{
Scanner input=new Scanner(System.in);
int a[],b[],n,m,c[],dex;
System.out.println("请输入数组a的元素个数");
n=input.nextInt();
System.out.println("请输入数组b的元素个数");
m=input.nextInt();
   a=new int[n];
   b=new int[m];
 
   System.out.println("请输入数组a的元素");
for (int i = 0; i < a.length; i++)
{
a[i]=input.nextInt();
}

System.out.println("请输入数组b的元素");
for (int i = 0; i < b.length; i++)
{
b[i]=input.nextInt();
}
 
c=new int[(n>m==true)?m:n];

dex=common( a, b, c);
  for (int i = 0; i < dex; i++)
{
System.out.print(c[i]+" ");
}
  input.close();
}
static int  common(int a[],int b[],int c[])
{
int i,j,k=0;  
sort1(a);
       sort1(b);
for ( i = 0,j=0; i < a.length&&j if(a[i]i++;
 else if(a[i]>b[j])
j++;
else
{
c[k]=a[i];
i++;
j++;
k++;
}
return k;
 }
static void sort1(int a[])//冒泡排序
{
int temp;
for (int i = 1; i for (int j = 0; j < a.length-i; j++)
{
if(a[j]>a[j+1])
{
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}

}
}





3. 在某歌唱比赛中,共有10位评委进行打分,在计算歌手得分时,去掉一个最高分,
 去掉一个最低分,然后剩余的8位评委的分数进行平均,就是该选手的最终得分。
 10位评委对某歌手的打分分别是:78、60、85、96、77、66、60、82、88、85。
 计算该歌手的最终得分。
package li.xiao.feng2;


import java.util.Scanner;


public class fianal_score 
{


public static void main(String[] args)
{
Scanner input=new Scanner(System.in);
int a[];
double score;

a=new int[10];
System.out.println("请输入该歌手的得分:");
for (int i = 0; i < a.length; i++)
{
a[i]=input.nextInt();
}
sort2(a);
score=ave_score( a);
System.out.println("该歌手的最终的得分为:"+score);
input.close();
}
 
 

public static double  ave_score(int a[])
{
int sum=0;  
double ave;
for (int i = 1; i < a.length-1; i++) 
{
sum=sum+a[i];
}
ave=sum/((a.length-2)*1.0);
return ave;
}
    static void sort2(int a[])
  {
int temp;
for (int i = 1; i for (int j = 0; j < a.length-i; j++)
{
if(a[j]>a[j+1])
{
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}

}
}



4.兔子在出生两个月后,就有繁殖能力,一对兔子每个月能生出一对小兔子来。
初始有一对小兔子,假设所有兔子都不死,计算前12个月每个月的兔子对数。
分析:
第一个月:1对
第二个月:1对
第三个月:2对
第四个月:3对
第五个月:5对
......

package li.xiao.feng2;


import java.util.Scanner;


public class Fibonacci {


public static void main(String[] args) 
{
int n;
Scanner input=new Scanner(System.in);
System.out.println("请输入要月份数:");
n=input.nextInt();
fibonacci(n);
input.close();
       return;
}
static void  fibonacci (int n)
{

int first=1, second=1, next=0;
System.out.println("前"+n+"个月兔子的对数分别为:");
System.out.print("1\t1\t");
for (int i = 3; i < (n+1); i++)
{
next=first+second;
   first=second;
second=next;
System.out.print(next+"\t");
}
}
}

你可能感兴趣的:(java中函数,数组,排序代码)