ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー ①将一个二维数组的行和列互换,存到另一个二维数组中 ②通过【打擂台算法】求出矩阵中最大的数 ③运用递归算法求n! ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー 1,将一个二维数组的行和列互换,存到另一个二维数组中 #include<stdio.h> #include<math.h> //将一个二维数组的行和列互换,存到另一个二维数组中 int main() { int a[2][3], b[3][2]; int i, j; for (i = 0; i < 2;i ++){ for (j = 0; j < 3;j ++){ scanf("%d",&a[i][j]); } } for (i = 0; i < 2; i++){ for (j = 0; j < 3; j++){ printf("%d\t", a[i][j]); b[j][i] = a[i][j]; } printf("\n"); } printf("array b :\n"); for (i = 0; i <= 2;i ++){ for (j = 0; j <= 1;j ++){ printf("%d\t",b[i][j]); } printf("\n"); } return 0; } 2,通过【打擂台算法】求出矩阵中最大的数 #include<stdio.h> #include<math.h> //通过【打擂台算法】求出矩阵中最大的数 int main() { int a[3][4]; int i, j,max=a[0][0]; int row=0, colum=0; // for (i = 1; i <= 3;i ++){ for (j = 1; j <= 4;j ++){ scanf("%d",&a[i][j]); } } for (i = 1; i <= 3;i ++){ for (j = 1; j <= 4;j ++){ printf("%d\t",a[i][j]); if (a[i][j] > max){ max = a[i][j]; row = i; colum = j; } } printf("\n"); } printf("max = %d\nrow = %d\ncolum = %d\n",max,row,colum); return 0; } 3、运用递归算法求n! #include<stdio.h> #include<math.h> //运用递归算法求n! int main() { int fac(int n); int i,f; printf("please enter a number:\n"); scanf("%d",&i); f = fac(i); printf("%d!=%d\n",i,f); return 0; } int fac(int n){ int f; if (n < 0){ printf("error!"); } else if (n == 0 || n == 1){ f = 1; } else{ f = fac(n - 1) * n; } return f; } |
|
来自: Sophia_Study > 《C语言》