CursosEmpresasBlogLiveConfPrecios

Arreglos bidimensionales

Clase 15 de 27 • Curso de Programación Estructurada

Contenido del curso

Introducción

  • 1
    Qué aprenderás sobre la programación estructurada

    Qué aprenderás sobre la programación estructurada

    00:44 min

Conceptos básicos

  • 2
    Set up de codeblocks y compilador

    Set up de codeblocks y compilador

    02:59 min
  • 3
    Variables y tipos de datos (Asignación y clasificación)

    Variables y tipos de datos (Asignación y clasificación)

    12:10 min
  • 4
    Entrada y salida de datos

    Entrada y salida de datos

    21:55 min
  • 5
    Operadores aritméticos

    Operadores aritméticos

    09:57 min
  • 6
    Operadores de asignación, de incremento y decremento

    Operadores de asignación, de incremento y decremento

    17:48 min
  • 7
    Recapitulación: Conceptos Básicos

    Recapitulación: Conceptos Básicos

    02:02 min

Control de flujo

  • 8
    Condicional if e if - else

    Condicional if e if - else

    18:35 min
  • 9
    Operadores relacionales y lógicos

    Operadores relacionales y lógicos

    13:25 min
  • 10
    Switch

    Switch

    08:27 min
  • 11
    ¿Qué es un iterador? - Ciclo While

    ¿Qué es un iterador? - Ciclo While

    05:54 min
  • 12
    Ciclo For

    Ciclo For

    08:43 min
  • 13
    Ciclo Do-While

    Ciclo Do-While

    05:53 min
  • 14
    Arreglos unidimensionales

    Arreglos unidimensionales

    13:35 min
  • 15
    Arreglos bidimensionales

    Arreglos bidimensionales

    Viendo ahora
  • 16
    Arreglos e iteradores unidimensionales

    Arreglos e iteradores unidimensionales

    08:52 min
  • 17
    Arreglos e iteradores bidimensionales

    Arreglos e iteradores bidimensionales

    08:47 min
  • 18
    Cadena de caracteres (string)

    Cadena de caracteres (string)

    06:51 min
  • 19
    Recapitulación: Control de Flujo

    Recapitulación: Control de Flujo

    04:49 min

Funciones

  • 20
    Funciones: Divide y vencerás

    Funciones: Divide y vencerás

    13:53 min
  • 21
    Variables locales y globales

    Variables locales y globales

    10:14 min
  • 22
    Recapitulación: Funciones

    Recapitulación: Funciones

    01:39 min

Conceptos avanzados

  • 23
    Recursividad

    Recursividad

    10:10 min
  • 24
    Apuntadores

    Apuntadores

    06:53 min
  • 25
    Struct y manejo de archivos

    Struct y manejo de archivos

    13:00 min
  • 26
    Escritura y lectura de archivos

    Escritura y lectura de archivos

    11:02 min
  • 27
    Manejo de librerías

    Manejo de librerías

    14:56 min
Tomar examen
Resumen

Los arreglos bidimensionales son también llamados tablas o matrices. Tiene dos índices: el primero indica el número de fila y el segundo el número de columna en que se encuentra el elemento.

Escuelas

  • Desarrollo Web
    • Fundamentos del Desarrollo Web Profesional
    • Diseño y Desarrollo Frontend
    • Desarrollo Frontend con JavaScript
    • Desarrollo Frontend con Vue.js
    • Desarrollo Frontend con Angular
    • Desarrollo Frontend con React.js
    • Desarrollo Backend con Node.js
    • Desarrollo Backend con Python
    • Desarrollo Backend con Java
    • Desarrollo Backend con PHP
    • Desarrollo Backend con Ruby
    • Bases de Datos para Web
    • Seguridad Web & API
    • Testing Automatizado y QA para Web
    • Arquitecturas Web Modernas y Escalabilidad
    • DevOps y Cloud para Desarrolladores Web
  • English Academy
    • Inglés Básico A1
    • Inglés Básico A2
    • Inglés Intermedio B1
    • Inglés Intermedio Alto B2
    • Inglés Avanzado C1
    • Inglés para Propósitos Específicos
    • Inglés de Negocios
  • Marketing Digital
    • Fundamentos de Marketing Digital
    • Marketing de Contenidos y Redacción Persuasiva
    • SEO y Posicionamiento Web
    • Social Media Marketing y Community Management
    • Publicidad Digital y Paid Media
    • Analítica Digital y Optimización (CRO)
    • Estrategia de Marketing y Growth
    • Marketing de Marca y Comunicación Estratégica
    • Marketing para E-commerce
    • Marketing B2B
    • Inteligencia Artificial Aplicada al Marketing
    • Automatización del Marketing
    • Marca Personal y Marketing Freelance
    • Ventas y Experiencia del Cliente
    • Creación de Contenido para Redes Sociales
  • Inteligencia Artificial y Data Science
    • Fundamentos de Data Science y AI
    • Análisis y Visualización de Datos
    • Machine Learning y Deep Learning
    • Data Engineer
    • Inteligencia Artificial para la Productividad
    • Desarrollo de Aplicaciones con IA
    • AI Software Engineer
  • Ciberseguridad
    • Fundamentos de Ciberseguridad
    • Hacking Ético y Pentesting (Red Team)
    • Análisis de Malware e Ingeniería Forense
    • Seguridad Defensiva y Cumplimiento (Blue Team)
    • Ciberseguridad Estratégica
  • Liderazgo y Habilidades Blandas
    • Fundamentos de Habilidades Profesionales
    • Liderazgo y Gestión de Equipos
    • Comunicación Avanzada y Oratoria
    • Negociación y Resolución de Conflictos
    • Inteligencia Emocional y Autogestión
    • Productividad y Herramientas Digitales
    • Gestión de Proyectos y Metodologías Ágiles
    • Desarrollo de Carrera y Marca Personal
    • Diversidad, Inclusión y Entorno Laboral Saludable
    • Filosofía y Estrategia para Líderes
  • Diseño de Producto y UX
    • Fundamentos de Diseño UX/UI
    • Investigación de Usuarios (UX Research)
    • Arquitectura de Información y Usabilidad
    • Diseño de Interfaces y Prototipado (UI Design)
    • Sistemas de Diseño y DesignOps
    • Redacción UX (UX Writing)
    • Creatividad e Innovación en Diseño
    • Diseño Accesible e Inclusivo
    • Diseño Asistido por Inteligencia Artificial
    • Gestión de Producto y Liderazgo en Diseño
    • Diseño de Interacciones Emergentes (VUI/VR)
    • Desarrollo Web para Diseñadores
    • Diseño y Prototipado No-Code
  • Contenido Audiovisual
    • Fundamentos de Producción Audiovisual
    • Producción de Video para Plataformas Digitales
    • Producción de Audio y Podcast
    • Fotografía y Diseño Gráfico para Contenido Digital
    • Motion Graphics y Animación
    • Contenido Interactivo y Realidad Aumentada
    • Estrategia, Marketing y Monetización de Contenidos
  • Desarrollo Móvil
    • Fundamentos de Desarrollo Móvil
    • Desarrollo Nativo Android con Kotlin
    • Desarrollo Nativo iOS con Swift
    • Desarrollo Multiplataforma con React Native
    • Desarrollo Multiplataforma con Flutter
    • Arquitectura y Patrones de Diseño Móvil
    • Integración de APIs y Persistencia Móvil
    • Testing y Despliegue en Móvil
    • Diseño UX/UI para Móviles
  • Diseño Gráfico y Arte Digital
    • Fundamentos del Diseño Gráfico y Digital
    • Diseño de Identidad Visual y Branding
    • Ilustración Digital y Arte Conceptual
    • Diseño Editorial y de Empaques
    • Motion Graphics y Animación 3D
    • Diseño Gráfico Asistido por Inteligencia Artificial
    • Creatividad e Innovación en Diseño
  • Programación
    • Fundamentos de Programación e Ingeniería de Software
    • Herramientas de IA para el trabajo
    • Matemáticas para Programación
    • Programación con Python
    • Programación con JavaScript
    • Programación con TypeScript
    • Programación Orientada a Objetos con Java
    • Desarrollo con C# y .NET
    • Programación con PHP
    • Programación con Go y Rust
    • Programación Móvil con Swift y Kotlin
    • Programación con C y C++
    • Administración Básica de Servidores Linux
  • Negocios
    • Fundamentos de Negocios y Emprendimiento
    • Estrategia y Crecimiento Empresarial
    • Finanzas Personales y Corporativas
    • Inversión en Mercados Financieros
    • Ventas, CRM y Experiencia del Cliente
    • Operaciones, Logística y E-commerce
    • Gestión de Proyectos y Metodologías Ágiles
    • Aspectos Legales y Cumplimiento
    • Habilidades Directivas y Crecimiento Profesional
    • Diversidad e Inclusión en el Entorno Laboral
    • Herramientas Digitales y Automatización para Negocios
  • Blockchain y Web3
    • Fundamentos de Blockchain y Web3
    • Desarrollo de Smart Contracts y dApps
    • Finanzas Descentralizadas (DeFi)
    • NFTs y Economía de Creadores
    • Seguridad Blockchain
    • Ecosistemas Blockchain Alternativos (No-EVM)
    • Producto, Marketing y Legal en Web3
  • Recursos Humanos
    • Fundamentos y Cultura Organizacional en RRHH
    • Atracción y Selección de Talento
    • Cultura y Employee Experience
    • Gestión y Desarrollo de Talento
    • Desarrollo y Evaluación de Liderazgo
    • Diversidad, Equidad e Inclusión
    • AI y Automatización en Recursos Humanos
    • Tecnología y Automatización en RRHH
  • Finanzas e Inversiones
    • Fundamentos de Finanzas Personales y Corporativas
    • Análisis y Valoración Financiera
    • Inversión y Mercados de Capitales
    • Finanzas Descentralizadas (DeFi) y Criptoactivos
    • Finanzas y Estrategia para Startups
    • Inteligencia Artificial Aplicada a Finanzas
    • Domina Excel
    • Financial Analyst
    • Conseguir trabajo en Finanzas e Inversiones
  • Startups
    • Fundamentos y Validación de Ideas
    • Estrategia de Negocio y Product-Market Fit
    • Desarrollo de Producto y Operaciones Lean
    • Finanzas, Legal y Fundraising
    • Marketing, Ventas y Growth para Startups
    • Cultura, Talento y Liderazgo
    • Finanzas y Operaciones en Ecommerce
    • Startups Web3 y Blockchain
    • Startups con Impacto Social
    • Expansión y Ecosistema Startup
  • Cloud Computing y DevOps
    • Fundamentos de Cloud y DevOps
    • Administración de Servidores Linux
    • Contenerización y Orquestación
    • Infraestructura como Código (IaC) y CI/CD
    • Amazon Web Services
    • Microsoft Azure
    • Serverless y Observabilidad
    • Certificaciones Cloud (Preparación)
    • Plataforma Cloud GCP

Platzi y comunidad

  • Platzi Business
  • Live Classes
  • Lanzamientos
  • Executive Program
  • Trabaja con nosotros
  • Podcast

Recursos

  • Manual de Marca

Soporte

  • Preguntas Frecuentes
  • Contáctanos

Legal

  • Términos y Condiciones
  • Privacidad
  • Tyc promociones
Reconocimientos
Reconocimientos
Logo reconocimientoTop 40 Mejores EdTech del mundo · 2024
Logo reconocimientoPrimera Startup Latina admitida en YC · 2014
Logo reconocimientoPrimera Startup EdTech · 2018
Logo reconocimientoCEO Ganador Medalla por la Educación T4 & HP · 2024
Logo reconocimientoCEO Mejor Emprendedor del año · 2024
De LATAM conpara el mundo
YoutubeInstagramLinkedInTikTokFacebookX (Twitter)Threads

      Comentarios

      Lorena Perales Anaya

      Lorena Perales Anaya

      student•
      hace 6 años
        Francisco Javier Lamas Ferreiro

        Francisco Javier Lamas Ferreiro

        student•
        hace 6 años
        Christian Geovany Muñoz Rodríguez

        Christian Geovany Muñoz Rodríguez

        student•
        hace 5 años
      Fernando Jesús Paredes Rios

      Fernando Jesús Paredes Rios

      student•
      hace 7 años
        Ignacio Crespo

        Ignacio Crespo

        student•
        hace 5 años
        Sabrina Poggi

        Sabrina Poggi

        student•
        hace 4 años
      Enrique Gutierrez

      Enrique Gutierrez

      student•
      hace 7 años
        Víctor Cerón Loeza

        Víctor Cerón Loeza

        student•
        hace 6 años
      Ervic Perez Mendoza

      Ervic Perez Mendoza

      student•
      hace 6 años
      Miguel Angel Franco

      Miguel Angel Franco

      student•
      hace 7 años
      Bernardino Villagra Baez

      Bernardino Villagra Baez

      student•
      hace 7 años
      Oriol Camí

      Oriol Camí

      student•
      hace 7 años
      Daniel Eishu Oyama Arevalo

      Daniel Eishu Oyama Arevalo

      student•
      hace 6 años
        Eduardo Jose Escalante Matallana

        Eduardo Jose Escalante Matallana

        student•
        hace 6 años
      Sebastian Marín Arias

      Sebastian Marín Arias

      student•
      hace 6 años
      Fernando Carreño

      Fernando Carreño

      student•
      hace 6 años
      LUIS MIGUEL ZAVALA FELIX

      LUIS MIGUEL ZAVALA FELIX

      student•
      hace 7 años
      Daniel Castillo Navarro

      Daniel Castillo Navarro

      student•
      hace 7 años
      Jose Antonio Vazquez Barrios

      Jose Antonio Vazquez Barrios

      student•
      hace 7 años
      Juan Sarmiento A.

      Juan Sarmiento A.

      student•
      hace 7 años
      Manuel Alejandro Aguilar Téllez Girón

      Manuel Alejandro Aguilar Téllez Girón

      student•
      hace 7 años
      Luis Franco

      Luis Franco

      student•
      hace 6 años
      Neider José Silva Parada

      Neider José Silva Parada

      student•
      hace 4 años
      Eduardo Osorio

      Eduardo Osorio

      student•
      hace 6 años
        Alejandro Urrea Giraldo

        Alejandro Urrea Giraldo

        student•
        hace 6 años
        Maribel Rojas Ramos

        Maribel Rojas Ramos

        student•
        hace 5 años
      Ricardo Montoya Infante

      Ricardo Montoya Infante

      student•
      hace 4 años
      Juan David Ramírez Ortiz

      Juan David Ramírez Ortiz

      student•
      hace 4 años

      Con bucles :)

      int main() { int tabla [3][4] = {{1, 2, -3, 4}, {1, 2, 3, 4}, {5, 4, 8, 9}}; for (int x = 0; x < 3; x++) { int suma = 0; for(int y = 0; y < 4; y++) { suma += tabla[x][y]; } printf("Suma fila %i: %i \n", x + 1, suma); } return 0; }```

      La solución es elegante y evita codigo. Dos bucles ayudan a sumar por fila recorriendo las filas sin tener que evitar codigo de suma ' insertado' de forma manual.

      Excelente solucion

      #include <stdio.h> #include <stdlib.h> #include <stdbool.h> int main(){ int arrregloBi[3][4] = { {3,-2,0,3}, {5,-4,3,6}, {9,10,3,4} }; int suma1, suma2, suma3; suma1 = arrregloBi[0][0] + arrregloBi[0][1] + arrregloBi[0][2] + arrregloBi[0][3]; suma2 = arrregloBi[1][0] + arrregloBi[1][1] + arrregloBi[1][2] + arrregloBi[1][3]; suma3 = arrregloBi[2][0] + arrregloBi[2][1] + arrregloBi[2][2] + arrregloBi[2][3]; printf("La suma de los elementos de la primera fila es: %i \n", suma1); printf("La suma de los elementos de la segunda fila es: %i \n", suma2); printf("La suma de los elementos de la tercera fila es: %i \n", suma3); return 0; }```

      Excelente código compañero!

      Gracias por tu aporte

      ++Reto 14++

      fue divertido hacer este programa.

      int main() { printf("\t Reto 14 \n"); printf("\t Arreglos Bidimensionales \n\n\n"); int matrix[3][4]; int result; printf("ingresa 4 numero que sumados entre si den 4 \n"); for(int i = 0; i < 4 ; i++) { printf("\n ingresa un numero: "); scanf("%i", &matrix[0][i]); result= matrix[0][0] + matrix[0][1] + matrix[0][2] + matrix[0][3]; } if( result== 4) printf("\n el resultado de la suma de la primera columna es: %i \n\n", result); else printf(" te pasaste era que sumara 4 te lo dije arriba \n \n"); printf("ingresa 4 numero que sumados entre si den 10 \n"); for(int i = 0; i < 4 ; i++) { printf("\n ingresa un numero: "); scanf("%i", &matrix[0][i]); result= matrix[0][0] + matrix[0][1] + matrix[0][2] + matrix[0][3]; } if( result== 10) printf("\n el resultado de la suma de la segunda columna es: %i \n\n", result); else printf(" te pasaste era que sumara 10 te lo dije arriba \n \n"); printf("ingresa 4 numero que sumados entre si den 26 \n"); for(int i = 0; i < 4 ; i++) { printf("\n ingresa un numero: "); scanf("%i", &matrix[0][i]); result= matrix[0][0] + matrix[0][1] + matrix[0][2] + matrix[0][3]; } if( result== 26) printf("\n el resultado de la suma de la tercera columna es: %i \n\n", result); else printf(" te pasaste era que sumara 26 te lo dije arriba \n \n"); return 0; }

      Que gran código Kiike!

      Apuntes de clase: ¿Qué es un arreglo bidimensional? Los arreglos bidimensionales son también llamados ++tablas o matrices++. Tienen dos índices: el primero indica el número de fila y el segundo el número de columna en que se encuentra el elemento. _ En el ejemplo de la clase (array 4x4) si lo representáramos gráficamente en una tabla, las posiciones quedarían así.

      array4x4.png

      _ Recuerda que la posicion de los arreglos empieza en "0".

      ArreglosBidimensionales.PNG
      #include <stdio.h> #include <stdlib.h> int main() { int matrix[4][4]; matrix[0][0] = 1; matrix[0][1] = 2; matrix[0][2] = 3; matrix[0][3] = 4; matrix[1][0] = 5; matrix[1][1] = 6; matrix[1][2] = 7; matrix[1][3] = 8; matrix[2][0] = 9; matrix[2][1] = 10; matrix[2][2] = 11; matrix[2][3] = 12; matrix[3][0] = 13; matrix[3][1] = 14; matrix[3][2] = 15; matrix[3][3] = 16; printf("%i%i%i%i", matrix[0][3], matrix[1][2], matrix[2][2], matrix[3][2]); return 0; }
      Sin título.png
      #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; int main() { printf(&quot;Suma de Filas&quot;); int arreglo[3][4] = { {1,1,1,1}, {2,2,2,2}, {6,6,6,8} }; int fila1=0, fila2=0, fila3=0,i,j; for (i = 0; i&lt;3; i++) { for (j = 0; j&lt;=3; j++) { if ( i == 0) fila1 = fila1 + arreglo[i][j]; else if (i == 1) fila2 = fila2 + arreglo[i][j]; else fila3 = fila3 + arreglo[i][j]; } } printf(&quot;\nLa suma de fila 1: %i \n&quot;, fila1); printf(&quot;La suma de fila 2: %i \n&quot;, fila2); printf(&quot;La suma de fila 3: %i \n&quot;, fila3); }```

      Buen codi bro

      Reto

      Captura de Pantalla 2020-01-11 a la(s) 4.18.09 p. m..png

      Reto:

      <int main() { printf("Array bidimensional suma de filas!\n"); int f = 0; int f1 = 1; int f2 = 5; int sumaFilas[3][4]; for(int i = 0; i < 3; i++) { for(int j = 0; j < 4; j++) { switch(i) { case 0: sumaFilas[i][j] = 1; f += sumaFilas[i][j]; break; case 1: sumaFilas[i][j] = j + f1; f += sumaFilas[i][j]; break; case 2: sumaFilas[i][j] = j + f2; f += sumaFilas[i][j]; break; } } printf("Fila numero %i: %i\n",i+1,f); f = 0; } return 0; }>
      #include <stdio.h> #include <stdlib.h> int main() { int total; int arrayBi[3][4] = {{3,-2,0,3}, {5,-4,3,6}, {9,10,3,4}}; //si la fila es menor que 3, entonces incrementalo for(int f = 0;f < 3; f++){ //reiniciando el valor de total total = 0; //si la columna es menor a 4 entonces incrementalo for(int s = 0; s < 4; s++){ //incrementa el valor total, en el valor de cada columna. total += arrayBi[f][s]; } // imprime los valores de las filas. printf("Total de la fila %i es: %i\n", f, total); } return 0; }```
      c14.jpg

      Reto

      #include <stdio.h> #include <stdlib.h> int main() { printf("Suma de filas de un Array Bidimencional\n\n"); int array[3][4] = {{1,1,1,1},{2,5,2,1},{6,6,6,8}}; int sum1=0,sum2=0,sum3=0; for(int i=0;i<1;i++){ for(int j=0;j<4;j++){ sum1 += array[i][j]; } } for(int i=1;i<2;i++){ for(int j=0;j<4;j++){ sum2 += array[i][j]; } } for(int i=2;i<3;i++){ for(int j=0;j<4;j++){ sum3 += array[i][j]; } } printf("\nLa suma de la primera fila es: \t\t %i",sum1); printf("\nLa suma de la segunda fila es: \t\t %i",sum2); printf("\nLa suma de la tercera fila es: \t\t %i \n",sum3); return 0; }

      NUMEROS BIDIMENSIONALES

      #include <stdio.h> #include <stdlib.h> int main() { int i, j; int list[3][4]; int total=0; list[0][0]=1; list[0][1]=1; list[0][2]=1; list[0][3]=1; list[1][0]=2; list[1][1]=3; list[1][2]=2; list[1][3]=3; list[2][0]=6; list[2][1]=7; list[2][2]=6; list[2][3]=7; for(i=0; i<3; i++){ for(j=0; j<4; j++){ total+= list[i][j]; } switch(i){ case 0: printf("Primera fila: %i \n", total); break; case 1: printf("Segunda fila: %i \n", total); break; case 2: printf("Tercera fila: %i \n", total); break; default: break; } total=0; } return 0; }

      El reto:

      1 #include <stdio.h> 2 3 int main(){ 4 int bi_arr[4][5] = { {3, 4, 1, -1, 4}, 5 {5, 3, 5, 6, 23}, 6 {7, 10, 3, 4, -12}, 7 {3, 2, 11, 12, 13} }; 8 int sume; 9 10 for(int i = 0; i < 4; i++){ 11 for(int j = 0; j < 5; j++){ 12 printf("Posicion (%i, %i): %i\n", i, j, bi_arr[i][j]); 13 sume += bi_arr[i][j]; 14 } 15 } 16 17 printf("La suma es: %i\n", sume);
      #include <stdio.h> #include <stdlib.h> int main() { printf("Array Bidimensional - Suma de filas\n\n"); int x[3][4] = { {1, 1, 2, 0}, {4, 3, 2, 1}, {8, 7, 6, 5} }; int suma; for(int i = 0; i < 3; i++) { for(int j = 0; j < 4; j++) { suma += x[i][j]; } switch(i) { case 0: printf("Primer Fila: \t%i\n", suma); break; case 1: printf("Segunda Fila: \t%i\n", suma); break; case 2: printf("Tercera Fila: \t%i\n", suma); break; } suma = 0; } return 0; }

      Dejo la solución de mi reto personal. Este mini programa permite ingresar el numero de filas y columnas de la matriz, luego se ingresa cada elemento y muestra el resultado de la suma de cada fila. Espero lo entiendan :)

      #include <stdio.h> #include <stdlib.h> int main() { int row, column, res; printf("MATRIX m x n\n"); printf(">>ENTER THE NUMBER OF ROWS: "); scanf("%i", &row); printf(">>ENTER THE NUMBER OF COLUMNS: "); scanf("%i", &column); int matrix[row][column]; for(int i = 0; i < row; i++){ for(int j = 0; j < column; j++){ printf(">>ENTER THE ELEMENT IN THE POSITION %i %i: ", i, j); scanf("%i", &matrix[i][j]); } } printf("\nENTERED MATRIX %i x %i\n", row, column); for(int i = 0; i < row; i++){ for(int j = 0; j < column; j++){ printf("%i\t", matrix[i][j]); } printf("\n"); } printf("\nSUM OF EACH ROW"); for(int i = 0; i < row; i++){ res = 0; for(int j = 0; j < column; j++){ res = res + matrix[i][j]; } printf("\nROW %i: %i", i, res); } printf("\n"); system("pause"); return 0; }

      Pregunta:

      En los arreglos bidimensionales, si inicializo el arreglo no es necesario poner el largo?

      Es decir se pone automaticamente como cuando uno no lo pone e inicializa un arreglo unidimensional?

      Hola Eduardo!

      Al declarar una matriz multidimensional en C, debe definir estrictamente una longitud para cada dimensión, a excepción de la primera (es opcional). Es decir, podría definir una matriz bidimensional sin indicar el número de filas, pero necesariamente deberá definir el número de columnas. Si deja ambas dimensiones vacías, el compilador le arrojará error.

      Le dejo un ejemplo para que entienda mejor lo que acabo de explicarle. Espero le sirva.

      array_mltidimensional.png

      Si es necesario declarar la longitud del arreglo así se inicialice cuando lo declara

      #include <stdio.h> #include <stdlib.h>

      int main() { float matriz[3][4], suma, valor; int i, j; for(i=0;i<=2;i++){ switch(i) { case 0: valor = (4/4); break; case 1: valor = (10.0/4.0); break; case 2: valor = (26.0/4.0); break; } for(j=0;j<=3;j++){ matriz[i][j]=valor; suma+=valor; } printf("La sumatoria de los valores de la Fila %i, es: %f\n", i, suma); suma=0; } return 0; }

      //COMPARTO MI SOLUCIÓN AL RETO

      #include <stdio.h> #include <stdlib.h> int main() { //VARIABLES RESULTADOS int Fila_1; int Fila_2; int Fila_3; //------------------// int matrixsuma [3][4]; matrixsuma [0][0] = 1; matrixsuma [0][1] = 1; matrixsuma [0][2] = 1; matrixsuma [0][3] = 1; matrixsuma [1][0] = 4; matrixsuma [1][1] = 2; matrixsuma [1][2] = 3; matrixsuma [1][3] = 1; matrixsuma [2][0] = 15; matrixsuma [2][1] = 4; matrixsuma [2][2] = 1; matrixsuma [2][3] = 6; //OPERACIONES// Fila_1 = (matrixsuma [0][0]+ matrixsuma [0][1]+ matrixsuma [0][2]+ matrixsuma [0][3]); printf("\n SUMA FILA 1 = %i \t" , Fila_1); Fila_2 = (matrixsuma [1][0]+ matrixsuma [1][1]+ matrixsuma [1][2]+ matrixsuma [1][3]); printf("\n SUMA FILA 2 = %i \t" , Fila_2); Fila_3 = (matrixsuma [2][0]+ matrixsuma [2][1]+ matrixsuma [2][2]+ matrixsuma [2][3]); printf("\n SUMA FILA 3 = %i \t" , Fila_3); return 0; }