stosowanie funkcji jednowymiarowej do tablicy dwuwymiarowej

0

Hejka, mam program

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define ROZMIAR 10

void wypelnienie(int tab[], int rozmiar);

int main(int argc, char* argv[])
{
    int tablica[ROZMIAR][ROZMIAR];
    int i, j;
    wypelnienie(tablica[0], ROZMIAR * ROZMIAR);

    for (i = 0; i < ROZMIAR; i++)
    {
        for (j = 0; j < ROZMIAR; j++)
            printf("%d ", tablica[i][j]);
        printf("\n");
    }
    return 0;
}

void wypelnienie(int tab[], int rozmiar)
{
    int i;
    for (i = 0; i < rozmiar; i++)
        tab[i] = i;
}

zastanawiam się w jaki sposób wykonać to samo działanie ale bez użycia funkcji wypelnienie, jakieś sugestie?

0
#include <stdio.h>
#define ROZMIAR 10

int main(int argc, char *argv[]) {
    int i, j;
    for(i = 0; i < ROZMIAR; ++i) {
        for(j = 0; j < ROZMIAR; ++j)
            printf("%d ", i * 10 + j);
        
    printf("\n");
    }
    return 0;
}

No tak na przykład.

0

A można to zrobić przy użyciu jednej pętli? Czy nie warto się tak bawić? :)

1
#include <stdio.h>
#define ROZMIAR 10
 
int main(int argc, char *argv[]) {
    int i, j;
    for(i = 0; i < ROZMIAR * ROZMIAR; ++i) {
        printf("%d ", i);
        
        if (i % 10 == 9)
            printf("\n");
    }
    return 0;
}
0

chodziło mi raczej o wypełnienie tablicy dwuwymiarowej w ten sposób, niż tylko wyświetlenie.

3

To co robisz w tej funkcji to jest technicznie UB, chociaż nie znam przypadku by nie działało. Jeśli masz tablicę n-wymiarową to tak ją traktuj.

0

dzięki wielkie :)

0

złośliwie odpowiadając możesz po prostu wypisać liczby..

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