第三次Java实验报告
实训1》:
1.实训目的:(1).了解Java中数组的定义。
(2).掌握不同类型数组的声明
方法及其应用。
(3).掌握一维和二维数组的创建及其使用方法。
2.实训内容:编写一个Java程序,用随机生成一维字符数组,然后先按正序
再按反序输出它们。
3.实训步骤:1》.在包“su”中创建可视类“sujian”.
2》.添加组件:Lable和Button更改其属性和Text。
3》.添加事件响应代码:对“确定”选择Events- widgetSelected
并将代码改为:char[] s=new char[15];
for(int i=0;i<s.length;i++){
int k=(int)(Math.random()*26+97);
s[i]=(char)k;
}
String str="随机字符";
String str1="反向输出";
for(int i=0;i<s.length;i++)
{
str=str+Character.toString(s[i]);
str1=str1+Character.toString(s[s.length-i-1]);
}label.setText(str);
label1.setText(str1);
运行结果为:
实训2》.
1.实训内容:编写一个Java程序,用二维数组实现奇数阶的魔方
矩阵:规律为:1.数1放在第一行的正中一列,2.从2起{
每个数所在的行数比前一数的行数减1,列数加1。
如果行数超过下界(上界)则改为上界(下界),3.如果数为n 的倍数,则其后的数所在位置列数不变,行数加1}
2.实训步骤:(1).在包中创建一个sujian1可视类
(2).添加组件:Lable和Button更改其属性和Text。
(3).添加事件响应代码:对“确定”选择Events- widgetSelected 并将代码改为:MessageBox box=new MessageBox(sShell,SWT.ICON_WARNING|SWT.OK);
int n=Integer.parseInt(text.getText()==""?"-1":text.getText());
if(n>9||n<1||n%2==0){
box.setMessage("输入一个不超过9的正奇数:");
}else{
box.setText(n+"阶魔方阵");
String[][] f=new String[n+1][n+1];
String str="";
int i=1,j=(n+1)/2;
f[i-1][j-1]="1";
for(int k=2;k<=n*n;k++){
if((k-1)%n==0){
i++;
}else{
i=(i==1)?n:i-1;
j=(j==n)?1:j+1;
}
if(k<10){
f[i-1][j-1]=""+Integer.toString(k);
}else f[i-1][j-1]=Integer.toString(k);
}
for(i=0;i<n;i++)
{
for(j=0;j<n;j++){
str=str+f[i][j]+" ";
}
str=str+"\n";
}
box.setMessage(str);
}
box.open();
text.selectAll();
text.setFocus();
运行结果为:。