实验20501439李敏杰Word文档下载推荐.docx
《实验20501439李敏杰Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《实验20501439李敏杰Word文档下载推荐.docx(11页珍藏版)》请在冰豆网上搜索。
理解多维数组(重点掌握二维);
3.
掌握String类的特点及常用方法的使用
4.
掌握StringBuffer类的特点及常用方法的使用
5.
掌握String类和StringBuffer类的区别
6.
理解equal方法与==的区别;
7.
掌握常用类的使用
二、实验容及要求
要求:
(1)实验中类名的定义规则见实验一要求;
(2)程序中要有相应的注释说明
(3)变量名要见名识意,代码要求规,左缩进。
1、定义一个6行6列的二维整型数组,输出该二维数组中的每行和每列的最大值、最小值、和平均值。
(知识点:
数组的创建、初始化和元素访问)
(1)数组元素的值随机产生,大小为20值99之间;
(2)输出结果按下面表格的形式输出。
每行,每列后面输出和、平均值、最大值和最小值,其中平均值保留小数点1位。
98
44
55
64
84
27
|
sum
avg
min
max
67
53
75
91
74
83
62
39
81
45
26
24
56
34
60
97
32
66
28
22
77
--------------------------------
代码如下:
package实验二;
publicclassExp02_01_{
/**
*班级:
15计单1班
*学号:
*:
敏杰
*实验时间:
2016-9-20
*本程序的功能是:
输出该二维数组中的每行和每列的最大值、最小值、和平均值
*/
publicstaticvoidmain(String[]args){
//TODO自动生成的方法存根
inti,j,sum1=0,sum2=0,k,max=0,min=100;
doubleavg;
int[][]a=newint[12][12];
System.out.println("
\t(20值99之间)\t\t6x6列表如下:
\t\tsum\tavg\tmin\tmax"
);
for(i=0;
i<
6;
i++){
max=0;
min=100;
for(j=0;
j<
j++){
do{
k=(int)(Math.random()*100);
//随机生成0-100的整数
}while(k<
20||k>
99);
if(k>
max)
max=k;
if(k<
min)
min=k;
a[i][j]=k;
System.out.print("
\t"
+a[i][j]);
sum1=sum1+a[i][j];
}
System.out.print("
|"
+sum1);
avg=Math.round(((sum1*1.0)/6)*10)/(10*1.0);
//P.192
+avg);
+min);
+max);
\n"
sum1=0;
}
int[]max1=newint[6];
int[]min1={100,100,100,100,100,100};
System.out.print("
for(j=0;
j++)
——\t"
sum"
double[]avg1=newdouble[6];
max1[i]=0;
min1[i]=100;
sum2=sum2+a[j][i];
if(a[j][i]>
max1[i])
max1[i]=a[j][i];
if(a[j][i]<
min1[i])
min1[i]=a[j][i];
avg1[i]=Math.round(((sum2*1.0)/6)*10)/(10*1.0);
+sum2);
sum2=0;
\navg"
+avg1[i]);
\nmin"
+min1[i]);
\nmax"
+max1[i]);
}
}
运行结果如下:
2、有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数。
(知识点:
数组定义和创建、数组遍历、数组元素访问)
例如1234567移动4个就变成4567123
(1)n和m的值由用户输入;
(2)每个元素的值由用户输入;
(3)利用Scanner类完成数值的输入。
Scannerinput=newScanner(System.in);
System.out.println(“请输入数组元素的个数”);
intsize=input.nextInt();
importjava.util.Scanner;
publicclassExp02_02_{
n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数
intn,m;
Scannernn=newScanner(System.in);
输入n的值:
"
n=nn.nextInt();
int[]a=newint[n];
输入m的值:
注m的值小于n的值"
m=nn.nextInt();
while(m>
n){
System.out.println("
请从新输入m的值:
请输入数组a的元素:
"
for(inti=0;
n;
a[i]=nn.nextInt();
a的元素为:
System.out.print(a[i]+"
\n后移m个位子后的数组a的元素为:
intt,j;
for(inti=0;
i<
m;
i++){
t=a[0];
for(j=0;
j<
n-1;
j++)
a[j]=a[j+1];
a[j]=t;
//System.out.print(a[j]);
//有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数。
//例如1234567移动4个就变成4567123
//要求:
//
(2)每个元素的值由用户输入;
//(3)利用Scanner类完成数值的输入。
3、有2个多维数组分别是234和1528
4685910-3
27-5-18
按照如下方式进行运算。
生成一个2行4列的数组。
此数组的第1行1列是2*1+3*5+4*2
第1行2列是2*5+3*9+4*7第2行1列是4*1+6*5+8*2依次类推。
多维数组定义和创建、数组遍历、数组元素访问)
publicclassExp02_03_{
/**
按题目方法输出数组,维数组定义和创建、数组遍历、数组元素访问
inti,j;
int[][]a={{2,3,4},{4,6,8}};
int[][]b={{1,5,2,8},{5,9,10,-3},{2,7,-5,-18}};
int[][]c=newint[2][4];
for(i=0;
2;
for(intk=0;
k<
4;
k++){
c[i][k]=0;
for(j=0;
3;
j+