首页 > 代码库 > 数组、冒泡排序、打分(例题)

数组、冒泡排序、打分(例题)

数组的定义:内存中,连续存储同一类数据的一块空间。

 

定义数组:  

int  a[]=new int[数组长度];              例:   int a[]= new int[5];

              也可以写成:   

 int []a=new int[数组长度];       例:   int []a=new int[5];

  

赋值:  

a[下标]=值;   例:     a[0]=10;   

取值:

a[下标]


例:     将值打印出来;
  System.out.print(a[0]);

 

 

 

冒泡排序:

int []a=new int[]{15,30,28,16,37};                            //定义一个整数数组

int zhong=0;                                                   //定义一个变量

for(int i=1;i<=a.length-1;i++)                                   //外面的循环是趟数,内循环是次数
{
     for(int j=1;j<=a.length-i;j++)                                     
     {
           if(a[j]<a[j-1])                                          //判断,如果后一个数小于前一个数,那么就把他们的值调换过来
           {
                zhong=a[j];
                a[j]=a[j-1];
                 a[j-1]=zhong;
            }
      }
}


for(int i=0; i<a.length;i++)                                //这个循环是将排序的值 分别打印出来
{
    System.out.print(a[i]+"\t");

}

  

 

评委打分:输入五个评委打的分数,去掉一个最高分,去掉一个最低分,求平均分。

//输入
		int shu[]=new int[5];
		System.out.println("请输入评委打的分数");
		Scanner sc=new Scanner(System.in);
		for(int i=0;i<5;i++)
		{
			shu[i]=sc.nextInt();
		}
		
		
		
		//排序
		int zhong=0;
		for(int i=1;i<=shu.length-1;i++)
		{
			for(int j=1;j<=shu.length-i;j++)
			{
				if(shu[j]<shu[j-1])
				{
					zhong=shu[j];
					shu[j]=shu[j-1];
					shu[j-1]=zhong;
				}
			}
		}
		
            
		
		//去掉最大值和最小值,剩下的求平均值
		int sum=0;
		for(int i=1; i<=shu.length-2;i++)
		{
			sum=sum+shu[i];
		}
		
		int avg=sum/(shu.length-2);
		
		
		
		//输出
		
		System.out.print("去掉一个最高分"+shu[shu.length-1]+",去掉一个最低分"+shu[0]+",平均得分"+avg);

  

  

           

 

数组、冒泡排序、打分(例题)