drewus
02-09-2011, 10:43
Questo è il codice:
struct libri
{
char name[MAX_LEN_TITLE];
int next;
}
struct libri *start = 0;
char book[MAX_BOOKS][MAX_LEN_TITLE];
int s = 1;
for(a = start; a; a = a->next, s++)
{
int i = 0;
for(; title[i] != a->title[i]; i++);
if(title[i] == a->title[i])
{
int num = 1;
for(; title[i + num] == a->title[i + num]; num++);
if(num == strlen(title))
{
book[s] = a->title;
}
continue;
}
}
Il problema è il seguente: solo se i titoli dei libri nel database iniziano con la mia stringa di ricerca, la funzione li trova(es. Titolo: caccia nel bosco, Stringa di ricerca: cac).
Qualche suggerimento?
struct libri
{
char name[MAX_LEN_TITLE];
int next;
}
struct libri *start = 0;
char book[MAX_BOOKS][MAX_LEN_TITLE];
int s = 1;
for(a = start; a; a = a->next, s++)
{
int i = 0;
for(; title[i] != a->title[i]; i++);
if(title[i] == a->title[i])
{
int num = 1;
for(; title[i + num] == a->title[i + num]; num++);
if(num == strlen(title))
{
book[s] = a->title;
}
continue;
}
}
Il problema è il seguente: solo se i titoli dei libri nel database iniziano con la mia stringa di ricerca, la funzione li trova(es. Titolo: caccia nel bosco, Stringa di ricerca: cac).
Qualche suggerimento?