PDA

View Full Version : [c] aiuto interpretazione codice


mto89
02-11-2008, 11:00
ciao ho questo codice che stampa a video una classifica, ma non riesco a capire come funziona il ciclo for dove c'è:
UTENTI[k][i]=str[i];
perchè k sarebbe riferito al numero della stringa in considerazione, e l'indice i affianco a k che serve?...questa sintassi non si usa solo nella dichiarazione per esprimere di quanti caratteri i saranno le k parole?...ecco il codice:

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


int main()
{
char UTENTI[8][8];
char str[] = {'u','t','e','n','t','e','0','\0'};
int k=0,i;

for (k=0; k<8;k++)
{
str[6]=(char)str[6]+1;
for (i=0;i<8;i++)
{
UTENTI[k][i]=str[i];
}
}

printf("Ecco la classifica inizale:\n ");

for(k=0; k<8; k++)
{
printf("%s\n",UTENTI[k]);
}

system("pause");
return 0;

}

royaleagle
02-11-2008, 12:18
Il ciclo for esterno scandisce gli 8 diversi utenti, quello interno popola l'array di char relativo all'utente selezionato dal ciclo esterno.

mto89
02-11-2008, 22:33
Il ciclo for esterno scandisce gli 8 diversi utenti, quello interno popola l'array di char relativo all'utente selezionato dal ciclo esterno.

questo l'ho capito, solo non capisco questa istruzione: UTENTI[k][i]=str[i], il k è riferito alla parola in elaborazione(alla stringa), mentre i come viene visto dal compilatore? perchè l'array di stringhe era gia stato definito prima

DanieleC88
03-11-2008, 00:41
È un'array di 8 elementi dove ognuno è un'array di 8 caratteri, quindi la k è l'indice della stringa, la i l'indice del carattere all'interno di ogni stringa.

ciao ;)