Tablica dwuwymiarowa - error 216

0

Witam. Program ma za zadanie wyliczać sumę elementów tablicy, której rozmiary są zdefiniowane przez użytkownika. Trafiam na ten error (216) pierwszy raz i jestem trochę zdezorientowany. Czytałem, szukałem o błędzie, ale nic w tym kodzie nie widzę. Z góry dziękuję za ewentualne naprowadzenie.
Ku zobrazowaniu:
user image

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


int suma(int n, int m, int tab[n][m]);
void wyswietl(int n, int m, int tab[n][m]);


int main()
{
	int n,m;
	scanf("%d %d",&n,&m);
	int tab[n][m];
	srand(time(NULL));
	printf("Suma elementow tablicy wynosi: %d\n",suma(n,m,tab));
	wyswietl(n,m,tab);
	
	
	return 0;
} 

int suma(int n, int m, int tab[n][m])
{
	int i,j,suma=0;
	for(i=0;i<n;i++) 
	   for(j=0;j<m;j++)
	      tab[i][j]=rand()%120+10;
	for(i=0;i<n;i++)
	    for(j=0;j<m;j++)
	        suma+=tab[i][j]; 
    return suma;
	
	
}



void wyswietl(int n, int m, int tab[n][m])
{
	int i,j;
	for(i=0;i<n;i++)
	   {
	for(j=0;j<m;j++)
	     printf("%4d",tab[i][j]);
	printf("\n");
       } 
          
} 
0

A treść tegoż błędu? o_O

1

Czegoś takiego: int suma(int n, int m, int tab[n][m]) nie da rady zrobić.
Albo dynamicznie przydzielasz, albo ustalasz jakiś maksymalny rozmiar, albo czytasz jako tablicę jednowymiarową.

1 użytkowników online, w tym zalogowanych: 0, gości: 1