[C] printf tablicy na ekran (problem)

0

Napisałem taki oto program. Chodzi o to że printf na końcu wywala najpierw to co ma wyświetlić a potem jakieś dziwne ciągi liczb, nie wiem skąd one się wzięły.

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

int main(int argc, char *argv[])
{
  int tab[1000], i;
  int tab2[100][10], k, l;
  FILE *fp;
  srand(time(NULL)) ;
  
  fp = fopen("plik.txt", "w");
    for(i=0; i<1000; i++)
      tab[i] = (rand() %10) +1;
 
  for(i=0; i<1000; i++)
    fprintf (fp,"%d", tab[i]);
      fclose (fp);
 
  fp = fopen("plik.txt" , "r" );
    for (k=0;k<100;k++)
      for (l=0;l<10;l++)
        fscanf(fp, "%2d", &tab2[k][l]);
          fclose;
  
  for (k=0;k<100;k++)
      {
       for (l=0;l<10;l++) 
         printf ("%2d", tab2[k][l]);
           printf("\n"); 
       }
    system("PAUSE");        
  return 0;
}
0
  1. nie zamknales strumienia, ale to raczej malo istotnie
  2. zobacz, co zawiera plik.txt. Jedna sporawa liczba. Jak program ma wiedziec, gdzie sie konczy wczytywanie pojedycznej liczby? Podpowiem ci, ze w kodzie brakuje ci jednej spacji, a gdzie to juz znajdz sam
0
iksarp napisał(a)
  1. nie zamknales strumienia, ale to raczej malo istotnie
  2. zobacz, co zawiera plik.txt. Jedna sporawa liczba. Jak program ma wiedziec, gdzie sie konczy wczytywanie pojedycznej liczby? Podpowiem ci, ze w kodzie brakuje ci jednej spacji, a gdzie to juz znajdz sam

Dzięki wielkie:) Działa.

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