1:(25分)给定一个int类型的数组,要求:
1.求和
2.求平均数(int)
3.求最大值,最小值
4.打印这个数组中数据
package org.westos.www;
public class MaxandMin
{
/* 1.求和 2.求平均值
public static void main(String[] args)
{ int sum=0;
int ave;
// int [] arr= {9,4,6,2,7,5,1};
for(int x=0;x<arr.length;x++)
{
sum+=arr[x];
}
ave=sum%(arr.length-1);
System.out.println("sum="+sum);
System.out.print("ave="+ave);
}
3.最大值和最小值
public static int getMax(int [] arr)
{
int max =arr[0];//也可以直接int max=0;是把角标作为初始化值
for(int x=1;x<arr.length;x++)
{
if(arr[x]>max) //arr[x]>arr[max]
max=arr[x];
}
return max;//return arr[max]
}
public static void main(String [] args)
{
int [] arr= {5,1,6,4,2,8,9};
int max=getMax(arr);
System.out.println("max="+max);
}
}
public static int getMin(int [] arr)
{
int min=0;
for(int x=1;x<arr.length;x++)
{
if(arr[x]<arr[min])
min = x;
}
return arr[min];
}
public static void main(String [] args)
{
int [] arr= {5,1,6,4,2,8,9};
int min =getMin(arr);
System.out.println("min="+min);
}
*/
//4.打印这个数组中数据
public static void main(String[] args)
{
int [] arr= {9,4,6,2,7,5,1};
printArray(arr);
}
public static void printArray(int [] arr)
{ System.out.print("[");
for(int x=0;x<arr.length;x++)
{
if(x!=arr.length-1)
{
System.out.print(arr[x]+",");
}
else
{
System.out.println(arr[x]+"]");
}
}
}
}
2:(25分)给定两个整型数组a和b,找出其共同元素。
eg:int[] a={23,12,45,11};
int[] b={99,33,12,45,67,11}
要找出:12,45,11
package org.westos.www;
public class Arrayfindsame
{
public static void main(String[] args) {
int[] a={23,12,45,11};
int[] b={99,33,12,45,67,11};
common(a,b);
}
public static void common(int[] a, int[] b)
{
System.out.println("数组中的相同元素为:");
for(int i=0;i<a.length;i++)
{
for (int j = 0; j < b.length; j++)
{
if(a[i]==b[j])
System.out.print(a[i]+" ");
}
}
}
}
3: (25分)在某歌唱比赛中,共有10位评委进行打分,在计算歌手得分时,去掉一个最高分,
去掉一个最低分,然后剩余的8位评委的分数进行平均,就是该选手的最终得分。
10位评委对某歌手的打分分别是:78、60、85、96、77、66、60、82、88、85。
计算该歌手的最终得分。
package org.westos.www;
public class sing
{
public static int getMin(int [] arr)
{
int min=arr[0];
for(int x=0;x<arr.length;x++)
{
if(arr[x]<min)
{
min=arr[x];
}
}
return min;
}
public static int getMax(int [] arr)
{
int max=0;
for(int x=0;x<arr.length;x++)
{
if(arr[x]>max)
{
max=arr[x];
}
}
return max;
}
public static void main(String [] args)
{
int [] arr= {78,60,85,96,77,66,60,82,88,85};
int max=getMax(arr);
int min=getMin(arr);
int sum=0;
for(int x=0;x<arr.length;x++)
{
sum+=arr[x];
}
int sum2=sum-max-min;
System.out.println("去掉最大值和最小值的和sum2="+sum2);
double ave=sum2/(arr.length-2);
System.out.println("最终得分为ave="+ave);
}
}
4.(25分)兔子在出生两个月后,就有繁殖能力,一对兔子每个月能生出一对小兔子来。
初始有一对小兔子,假设所有兔子都不死,计算前12个月每个月的兔子对数。
分析:
第一个月:1对
第二个月:1对
第三个月:2对
第四个月:3对
第五个月:5对
……
package org.westos.www;
import java.util.Scanner;
public class Rabbit
{
public static void main(String[] args)
{
Scanner input=new Scanner(System.in);
System.out.print("请输入要计算的月数:");
int m=input.nextInt();
int i=1;
int[] arr=new int[m];
for(i=1;i<m;i++)
{
if(i==1|i==2)
arr[1]=arr[2]=1;
else
arr[i]=arr[i-2]+arr[i-1];
}
for(i=1; i<m;i++)
{
System.out.println("第" + i +"月的兔子数目为:" + arr[i]);
}
}
}