Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[C++] Działania na tablicach

Ostatnio zmodyfikowano 2009-04-25 19:42
Autor Wiadomość
paczaja
Temat założony przez niniejszego użytkownika
[C++] Działania na tablicach
» 2009-04-25 14:32:32
Witam!
Mam problem z wczytaniem i wyświetleniem tablicy. Mam plik nazwa.txt który wygląda tak:

0000000000000000
0000000000000000
0000000000000001
0000000000000011
0000000000000111
0000000000001111
0000000000011111
0000000000111111
0000000001111111
0000000011111111
0000000111111111
0000001111111111

Chcąc wczytać te liczby do tablicy postępuję tak:
C/C++
int tablica[ 12 ][ 16 ];
int i, j;
char tmp[ 12 ];

FILE * f;
f = fopen( "nazwa.txt", "r" );

if( f == 0 )
     exit( 0 );

for( i = 0; i < 12; i++ )
{
    for( j = 0; j < 16; j++ )
    {
        fscanf( f, "%s", tmp );
        tablica[ i ][ j ] = atoi( tmp );
    }
}

fclose( f );

A chcąc wyświetlić na ekranie postępuję tak:
C/C++
for( int x = 0; x < 12; x++ )
{
    for( int z = 0; z < 16; z++ )
    {
        cout << setw( 12 ) << tab[ x ][ z ];
    }
    cout << endl;
}
}

Jednak nie wiem dlaczego, ale wyświetla się straszne dziadostwo...pomoże ktoś?
P-5963
pixelmaster
» 2009-04-25 15:03:32
P-5964
paczaja
Temat założony przez niniejszego użytkownika
» 2009-04-25 16:33:04
Problem w tym, że nie rozumiem kodu z tej strony:/
P-5965
DejaVu
» 2009-04-25 16:50:50
zamień:
C/C++
fscanf( f, "%s", tmp );
tablica[ i ][ j ] = atoi( tmp );
na:
C/C++
char znak;
do
{
    fscanf( f, "%c", & znak );
} while( !( znak >= '0' && znak <= '9' ) )
     tablica[ i ][ j ] = znak - '0';

P-5967
paczaja
Temat założony przez niniejszego użytkownika
» 2009-04-25 19:42:39
Dzięki wielkie:)
P-5996
« 1 »
  Strona 1 z 1