seergiomv

Ejercicio 14.4

Dec 12th, 2019
175
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.08 KB | None | 0 0
  1. #include <stdio.h>
  2. #define N 19
  3. void matriz();
  4. void cambio();
  5. int main(){
  6.     int x[N][N];
  7.     matriz(x);
  8.  
  9. }
  10. void matriz(int x[N][N]) {
  11.     int tamano,p,a,b;
  12.     printf("Diga el tamaño de la matriz(cuadrada y < 20): ");
  13.     scanf("%d", &tamano);
  14.     if (tamano < 20 && tamano > 0) {
  15.         for (int i = 0; i < tamano; i++) {
  16.             for (int j = 0; j < tamano; j++) {
  17.                 printf("Dime la posicion (%d,%d):", i + 1, j + 1);
  18.                 scanf("%d", &x[i][j]);
  19.             }
  20.         }
  21.         for (int i = 0; i < tamano; i++) {
  22.             for (int j = 0; j < tamano; j++) {
  23.                 printf("%d\t", x[i][j]);
  24.             }
  25.             printf("\n");
  26.         }
  27.     }
  28.     int aux = 0, n = 0, m = 0;
  29.     printf("Pulse 1 si quiere intercambiar alguna fila,2 para columnas, 0 para salir:");
  30.     scanf("%d",&p);
  31.     if (p == 1){
  32.         printf("Introduce una fila: ");
  33.         scanf("%d",&n);
  34.         if (n >= 1 && n <= tamano){
  35.             printf("Introduce otra fila: ");
  36.             scanf("%d",&m);
  37.             if (m >= 1 && m <= tamano && m != n){
  38.                 for (int i = 0; i < tamano; i++){
  39.                     aux = x[n-1][i];
  40.                     x[n-1][i] = x[m-1][i];
  41.                     x[m-1][i] = aux;
  42.                 }
  43.             }
  44.         } for (int i = 0; i < tamano; i++){
  45.             for (int j = 0; j < tamano; j++){
  46.                 printf("%d\t",x[i][j]);
  47.             } printf("\n");
  48.         }
  49.     }
  50.     if (p == 2){
  51.         printf("Introduce una columna: ");
  52.         scanf("%d",&n);
  53.         if (n >= 1 && n <= tamano){
  54.             printf("Introduce otra columna: ");
  55.             scanf("%d",&m);
  56.             if (m >= 1 && m <= tamano && m != n){
  57.                 for (int i = 0; i < tamano; i++){
  58.                     aux = x[i][n-1];
  59.                     x[i][n-1] = x[i][m-1];
  60.                     x[i][m-1] = aux;
  61.                 }
  62.             }
  63.         } for (int i = 0; i < tamano; i++){
  64.             for (int j = 0; j < tamano; j++){
  65.                 printf("%d\t",x[i][j]);
  66.             } printf("\n");
  67.         }
  68.     }
  69. }
Advertisement
Add Comment
Please, Sign In to add comment