PDA

Visualizza la versione completa : [C] Effettuare ricerche all'interno di record


elricmarci
29-01-2011, 00:17
RAgazzi come faccio a fare una ricerca in questo record??Ad esempio per sapere i cognomi dei pazienti??
Grazie Mille



#include <stdio.h>
#include <stdlib.h>
#define max 100

int main()
{
FILE *fp;
char codpaziente[max],cognomep[max],nomep[max],citta[max],reparto[max];
int nletto,nump,i,scelta;
fp=fopen("pazienti.txt","w");
printf ("Inserisci il numero dei pazienti da registrare");
scanf ("%d",&nump);
for (i=0;i<nump;i++)
{
i=1;
printf ("Registrazione del paziente numero %i",i);
printf ("\n Codice del paziente");
scanf ("%s",codpaziente);
printf ("\nCognome del paziente");
scanf ("%s",cognomep);
printf ("\nNome del paziente");
scanf ("%s",nomep);
printf ("\nCita' da dove proviene il paziente");
scanf ("%s",citta);
printf ("\nReparto nel quale inserire il paziente");
scanf ("%s",reparto);
printf ("\nNumero del letto dove alloggierà");
scanf ("%d",&nletto);
system ("cls");
}
printf ("\n\tcome vuoi ricercare il paziente?\n");
printf ("\n 1. codice paziente \n 2. cognome pazziente \n 3. nome paziente \n 4. citta' \n 5. reparto \n 6. numero letto \n premi ESC per uscire");
scanf ("%d",&scelta);
switch (scelta)
{
case '1':
;
}
return 0;
}

_Alfabetagamma_
29-01-2011, 00:28
Non capisco la tua domanda, tu salvi il nome del paziente in un array tuo, non lo scrivi (apparentemente) sul file. Dove lo vuoi ricercare?

Laikius91
29-01-2011, 09:28
Mmmm a me sembra che i dati non vengano neanche salvati in un array, anzi vengono sovrapposti ad ogni ciclo! :d56:

_Alfabetagamma_
29-01-2011, 11:48
A questo punto possiamo solo attendere delucidazioni dal caro elricmarci :fagiano:

Laikius91
29-01-2011, 12:08
Originariamente inviato da _Alfabetagamma_
A questo punto possiamo solo attendere delucidazioni dal caro elricmarci :fagiano:

Si ma tra l'altro mi sono accorto ora che dentro al for viene anche posto


i = 1;

Quindi non terminerà mai!!! :confused:

_Alfabetagamma_
29-01-2011, 12:11
Beh se pensi alla sanità questo codice ha anche le sue buone ragioni, i pazienti non terminano mai :zizi:

Poi sicuramente lui voleva fare una roba del tipo




typedef struct paziente
{
char nome[50];
...
...
...
} un_paziente;


int main
{
un_paziente pazienti[20];

}



Perchè anche se incrementa i, dove li salva che ha creato un array di char (stringa) e non un array di stringhe ("matrice")? XD

Laikius91
29-01-2011, 13:41
Originariamente inviato da _Alfabetagamma_
Beh se pensi alla sanità questo codice ha anche le sue buone ragioni, i pazienti non terminano mai :zizi:

Poi sicuramente lui voleva fare una roba del tipo




typedef struct paziente
{
char nome[50];
...
...
...
} un_paziente;


int main
{
un_paziente pazienti[20];

}



Perchè anche se incrementa i, dove li salva che ha creato un array di char (stringa) e non un array di stringhe ("matrice")? XD


Buona quella della sanità xD :biifu:

Penso anche io che le sue intenzioni fossero quelle che hai detto tu... Se magari ci illuminasse :)

Loading