A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 ytblght55 于 2013-6-25 21:42 编辑
  1. class Demo
  2. {
  3. public static void main(String[] args)
  4. {

  5. /*

  6. 已知 一个4*4 的二维数组 int[][] a={{1,1,1,1},{1,2,2,1},{1,2,2,1},{1,1,1,1}}
  7. 需求: 1: 打印二维数组,打印出的效果如下所示

  8. 1 1 1 1

  9. 1 2 2 1

  10. 1 2 2 1

  11. 1 1 1 1
  12. 2 :求出二维数组除对角线元素之外的所有元素的和

  13. 3: 将数组转化为一个正方形
  14. */
  15. int[][] a={{1,1,1,1},{1,2,2,1},{1,2,2,1},{1,1,1,1}};
  16. show(a);//这是一个打印的函数打印数组
  17. int sum =getsum(a);//这是一个求和的函数
  18. System.out.println("sum="+sum);
  19. show1(a);//这是一个打印正方形的函数
  20. }
  21. //这是一个打印的函数
  22. public static void show(int arr[][])
  23. {
  24. for (int x=0;x<arr.length ;x++ )
  25. {
  26. for (int y=0;y<arr[x].length ;y++ )
  27. {
  28. System.out.print(arr[x][y]+" ");//这是一个打印二维数组的语句
  29. }
  30. System.out.println();
  31. }
  32. }
  33. //这是一个求对角线和的方法
  34. public static int getsum(int arr[][])
  35. {
  36. int sum=0;
  37. for (int x=0;x<arr.length ;x++ )//这是外循环控制行数,x<arr.length
  38. {
  39. for (int y=0;y<arr[x].length ;y++ )//这是内循环控制氏列,arr[x]是一个数组所以写成arr[x].length有长度的.
  40. {
  41. if (x==y||(x+y)==3)//对角,x,y是下标,当x=y的时候.即右斜角,当x+y=3的时候,即左斜角
  42. {
  43. sum=sum+arr[x][y];//用sum的值来记录,对角相加的和
  44. }
  45. }
  46. }
  47. return sum;
  48. }
  49. //打印一个正方形
  50. public static void show1(int arr[][])
  51. {
  52. for (int x=0;x<arr.length ;x++ )
  53. {
  54. for (int y=0;y<arr[x].length ;y++ )
  55. {

  56. if (arr[x][y]==1)//判断如二维数组中的元素为1,那么打印*.否则打印空格
  57. {
  58. System.out.print("* ");
  59. }
  60. else
  61. {
  62. System.out.print(" ");
  63. }
  64. }
  65. System.out.println();
  66. }
  67. }
  68. }
复制代码

评分

参与人数 1技术分 +1 黑马币 +5 收起 理由
神之梦 + 1 + 5 最好可以给出结果图

查看全部评分

2 个回复

正序浏览
支持了。。。
回复 使用道具 举报
值得学习ing!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马