数组参考答案.docx

上传人:b****1 文档编号:345045 上传时间:2022-10-09 格式:DOCX 页数:13 大小:19.12KB
下载 相关 举报
数组参考答案.docx_第1页
第1页 / 共13页
数组参考答案.docx_第2页
第2页 / 共13页
数组参考答案.docx_第3页
第3页 / 共13页
数组参考答案.docx_第4页
第4页 / 共13页
数组参考答案.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

数组参考答案.docx

《数组参考答案.docx》由会员分享,可在线阅读,更多相关《数组参考答案.docx(13页珍藏版)》请在冰豆网上搜索。

数组参考答案.docx

数组参考答案

一、【必做题】

1.编写一个简单程序,要求数组长度为5,分别赋值10,20,30,40,50,在控制台输出该数组的值。

/*例5-1

*数组使用范例

*/

publicclassArrayDemo

{

publicstaticvoidmain(String[]args)

{

int[]buffer=newint[5];

buffer[0]=10;

buffer[1]=20;

buffer[2]=30;

buffer[3]=40;

buffer[4]=50;

for(inti=0;i<5;i++)

{

System.out.println(buffer[i]);

}

}

}

2.输出一个double型二维数组(长度分别为5、4,值自己设定)的值。

/*例5-3

*多维数组范例

*/

publicclassArrayTwoDimension

{

publicstaticvoidmain(String[]args)

{

double[][]buffer=newdouble[5][4];

for(inti=0;i

{

for(intj=0;j

{

System.out.print(buffer[i][j]);

}

System.out.println();

}

}

}

3.将一个字符数组的值(neusofteducation)考贝到另一个字符数组中。

publicclassArrayCopyDemo{

publicstaticvoidmain(String[]args){

//定义源字符数组

char[]copyFrom={'n','e','u','s','o','f','t','e','d','u','c','a','t','i','o','n'};

char[]copyTo=newchar[7];

System.arraycopy(copyFrom,2,copyTo,0,7);

System.out.println(newString(copyTo));

}

}

4.给定一个有9个整数(1,6,2,3,9,4,5,7,8})的数组,先排序,然后输出排序后的数组的值。

publicclassArraySortDemo{

/**

*@paramargs

*/

publicstaticvoidmain(String[]args){

//TODOAuto-generatedmethodstub

int[]point={1,6,2,3,9,4,5,7,8};

java.util.Arrays.sort(point);

for(inti=0;i

{

System.out.println(point[i]);

}

}

}

5.在一个有8个整数(18,25,7,36,13,2,89,63)的数组中找出其中最大的数及其下标。

publicclassArraymax{

/**

*@paramargs

*/

publicstaticvoidmain(String[]args){

int[]a={18,25,7,36,13,2,89,63};

intmax=a[0];

intmaxIndex=0;

for(inti=1;i

{

if(max<=a[i]){

max=a[i];

maxIndex=i;

}

}

System.out.println("最大值为:

"+max+"最大值下标为:

"+maxIndex);

}

}

6、有一个已经排好序的数组。

现输入一个数,要求按原来的规律将它插入数组中。

importjava.util.Scanner;

 

publicclassArrayinsert{

/**

*@paramargs

*/

publicstaticvoidmain(String[]args){

//定义

inta[]={1,2,4,8,16,32,64,128,256,512,0};

Scanners=newScanner(System.in);

a[11]=s.nextInt();

java.util.Arrays.sort(a);

for(inti=0;i

{

System.out.println(a[i]);

}

}

}

7.输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。

packagecom.neusoft.javaTest;

importjava.util.*;

publicclassAnswer{

publicstaticvoidmain(String[]args){

inti,min,max,n,temp1,temp2;

inta[];

System.out.println("输入数组的长度:

");

Scannerkeyboard=newScanner(System.in);

n=keyboard.nextInt();

a=newint[n];

for(i=0;i

System.out.print("输入第"+(i+1)+"个数据");

a[i]=keyboard.nextInt();

}

//以上是输入整个数组

max=0;

min=0;

//设置两个标志,开始都指向第一个数

for(i=1;i

if(a[i]>a[max])

max=i;//遍历数组,如果大于a[max],就把他的数组下标赋给max

if(a[i]

min=i;//同上,如果小于a[min],就把他的数组下标赋给min

}

//以上for循环找到最大值和最小值,max是最大值的下标,min是最小值的下标

temp1=a[0];

temp2=a[min];//这两个temp只是为了在交换时使用

a[0]=a[max];

a[max]=temp1;//首先交换a[0]和最大值a[max]

if(min!

=0){//如果最小值不是a[0],执行下面

a[min]=a[n-1];

a[n-1]=temp2;//交换a[min]和a[n-1]

}else{//如果最小值是a[0],执行下面

a[max]=a[n-1];

a[n-1]=temp1;

}

for(i=0;i

System.out.print(a[i]+"");

}

}

}

8.将一个数组中的元素逆序存放

publicclassAnswer{

publicstaticvoidmain(String[]args){

Scanners=newScanner(System.in);

inta[]=newint[20];

System.out.println("请输入多个正整数(输入-1表示结束):

");

inti=0,j;

do{

a[i]=s.nextInt();

i++;

}while(a[i-1]!

=-1);

System.out.println("你输入的数组为:

");

for(j=0;j

System.out.print(a[j]+"");

}

System.out.println("\n数组逆序输出为:

");

for(j=i-2;j>=0;j=j-1){

System.out.print(a[j]+"");

}

}

}

 

9.将一个数组中的重复元素保留一个其他的清零。

publicclassAnswer{

publicstaticvoidmain(String[]args){

int[]a={1,2,2,3,4,5,6,4,7,2,10};

for(inti=0;i

for(intj=i+1;j

if(a[i]==a[j]){

a[j]=0;

}

}

}

}

}

10、写一个方法,功能:

定义一个一维的int数组,长度为3,把任意三个整数a,b,c赋值给数组,然后将它们按从小到大的顺序输出(使用冒泡排序)

publicstaticvoidsort(int[]data){

//数组长度  

intlen=data.length;

inttemp=data[0];//临时变量

for(inti=0;i

for(intj=len-1;j>i;j--){

//如果data[j]小于data[j-1],交换  

if(data[j]

temp=data[j];

data[j]=data[j-1];

data[j-1]=temp;

}

}

}

}

//数组打印 

publicstaticvoidprint(int[]data){

for(inti=0;i

System.out.print(data[i]+"");

}

System.out.print("\n");

}

11、给定一维数组{-10,2,3,246,-100,0,5},计算出数组中的平均值、最大值、最小值。

inta[]=newint[]{-10,23,246,-100,0,5};

intmax=a[0];

intmin=a[0];

intadd=a[0];

for(inti=1;i

if(a[i]

min=a[i];

}elseif(a[i]>max){

max=a[i];

}

add=add+a[i];

}

System.out.pr

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1