【题目一 矩阵的转置】接收用户输入的3行列的矩阵,编写一个函数对该矩阵进行转置操作。例如:
经过转置后,,输出为;
程序源码:
1: public class ZhunShuZu
2: {
3: public static void main(String[] args)
4: {
5: Scanner sc=new Scanner(System.in);
6: int[][] n=new int [3][3];
7: for(int i&#61;0;i<3;i&#43;&#43;)
8: for(int j&#61;0;j<3;j&#43;&#43;)
9: {
10: n[i][j]&#61;sc.nextInt();//将输入的整数赋值
11: }
12: reverse(n);
13: for(int i&#61;0;i 14: { 15: for(int j&#61;0;j 16: { 17: System.out.print(n[i][j]&#43;" "); 18: } 19: System.out.print("\n"); 20: } 21: } 22: static void reverse(int[][] n) 23: { 24: for(int i&#61;0;i 25: for(int j&#61;0;j 26: { 27: int temp; 28: temp &#61; n[j][i]; 29: n[j][i] &#61; n[i][j]; 30: n[i][j] &#61; temp; 31: } 32: } 33: }
测试数据&#xff1a;
1
2
3
4
5
6
7
8
9
1 2 3
4 5 6
7 8 9
【题目二 打印杨辉三角】在屏幕上打印出一个10阶的杨辉三角(如下)
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
程序分析&#xff1a;从第零行算起的话&#xff0c;返回为1&#xff0c;第零列也为1&#xff0c;当行等于列是也为1&#xff0c;从第三行起第一列等于上一行的左边一列和上一行的同一列之和。因此可得出如下源码&#xff1a;
1: public class yanghui
2: {
3: public static void main(String[] args)
4: {
5: int i,j;
6: for(i&#61;0;i<10;i&#43;&#43;)
7: {
8: for(j&#61;0;j
9: System.out.print(f(i,j)&#43;" ");
10: System.out.println();
11: }
12: }
13: public static int f(int m,int n)
14: {
15: if(m&#61;&#61;0||n&#61;&#61;m||n&#61;&#61;0)
16: return 1;
17: else
18: return (f(m-1,n)&#43;f(m-1,n-1));
19: }
20: } 当然实现杨辉三角的方法有方法有很多&#xff0c;此处我列出的只是方便人的思维的算法之一&#xff0c;希望有兴趣的网友另外发表留言&#xff0c;共同进步&#xff0c;谢谢阅读。