java数据类型与数组实验

  • 格式:doc
  • 大小:61.50 KB
  • 文档页数:5

实验三 数据类型与数组
一、实验目的与要求:
目的:掌握数据类型与数组的定义、初始化与使用。
要求:1、使用已知给定的数值初始化一个5*5的二维数组。
2、每次打印都应该按照从上到下从左到右的顺序。
3、实验报告给出完整代码。
二、实验内容和原理:
1、查看自己名字的UNICODE编码。
2、转置二维矩阵。
三、实验环境:java实验环境jdk windows xp

四、 实验学时、性质

3学时、验证性

五、算法描述及实验步骤
1、编写程序将自己姓名的汉字转化为UNICODE编码,并打印。
按要求写代码如下:
public class myUnicode{
public static void main (String [] args){
System.out.println("'李全营'对应的Unicode编码值如下:");
System.out.println((int)'李');
System.out.println((int)'全');
System.out.println((int)'营');
}
}
另存为:Unicode.java
编译结果无误,运行结果如下

2、用任意的23个整数初始化一个5*5的二维int类型数组,并逐行打印。
3、交换沿对角线上对称的元素,并打印转置后的矩阵。
按要求写代码如下:
import static java.lang.System.*;
public class shuzu{
public static void main (String [] args){
int A[][]={
{1,2,3,4,5},
{11,22,33,44,55},
{111,222,333,444,555},
{1111,2222,3333,4444,5555},
{11111,22222,33333,0,0}
};
// //*****************下面输出数组*****************
int i,j;
out.println("原数组:");
for(i=0;i<5;i++)
for(j=0;j<5;j++){
out.print(A[i][j]);
if(j<4) out.print(",");
}
out.println("");
//******************输出转置矩阵************
int k;
for(i=0;i<5;i++)
for(j=0;jif(i!=j){
k=A[i][j];
A[i][j]=A[j][i];
A[j][i]=K;
}
}
out.println("转置后的数组:");
for(i=0;i<5;i++)
for(j=0;j<5;j++){
out.print(A[i][j]);
if(j<4) out.print(",");
}
}
}
以shuzu.java保存
编译,出现如下错误:

一看,再看,没错啊,已经定义了,怎么会找不到。找到源代码继续仔细看看,哎!
啥时候k成大写了。将K改为k后。继续编译,编译无误:

输入java shuzu 输出结果如下:
没有成行输出数组的每一行。进行修改:
在for循环最一行加入: if(j>3) out.println("");
即如下:int i,j;
out.println("原数组:");
for(i=0;i<5;i++)
for(j=0;j<5;j++){
out.print(A[i][j]);
if(j<4) out.print(",");
if(j>3) out.println("");
}
编译无误,可以输出正确结果如下:

六、总结
本次实验让我回忆起了C语言的一些循环语句。并且在其基础上,了解掌握java的循环语
句,这说明学习要融会贯通。要善于对比发现。另外还深深感受到写程序需要我没有足够的
细心:像上面我的程序因输入失误把“k”误写成“K”而在txt文档里面不容易看出k被大
写了。还有输入法的切换。往往容易用中文输入法输入一些符号,致使程序出错,五法正常
编译,因此做实验要细心去做,不然会浪费很多宝贵时间在没意义的错误上。本次实验基于
C语言的基础,还算顺利完成。在实在无聊的周末做实验,也是件更人兴奋的事情。我会在
平时去加强java编程,努力提高自己的编写java程序的能力
附录代码:
(一)
public class myUnicode{
public static void main (String [] args){
System.out.println("'李全营'对应的Unicode编码值如下:");
System.out.println((int)'李');
System.out.println((int)'全');
System.out.println((int)'营');
}
}

(二)import static java.lang.System.out;

public class shuzu{
public static void main (String [] args){
int A[][]={
{1,2,3,4,5},
{11,22,33,44,55},
{111,222,333,444,555},
{1111,2222,3333,4444,5555},
{11111,22222,33333,0,0}
};
//*****************下面输出数组*******************
int i,j;
out.println("原数组:");
for(i=0;i<5;i++)
for(j=0;j<5;j++){
out.print(A[i][j]);
if(j<4) out.print(",");
if(j>3) out.println("");
}
out.println("");
//******************输出转置矩阵*******************
int k;
for(i=0;i<5;i++)
for(j=0;jif(i!=j){
k=A[i][j];
A[i][j]=A[j][i];
A[j][i]=k;
}
}
out.println("转置后的数组:");
for(i=0;i<5;i++)
for(j=0;j<5;j++){
out.print(A[i][j]);
if(j<4) out.print(",");
if(j>3) out.println("");
}
}
}