Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "oph.h"
- void StampaFile (FILE *fp) {
- char c;
- printf("CONTENUTO DEL FILE 'anagrafe.txt'\n\n");
- fp = fopen("anagrafe.txt","r");
- if (fp==NULL) printf("\nERRORE NELL' APERTURA DEL FILE\n");
- else while ((c=fgetc(fp))!=EOF) printf("%c",c);
- fclose(fp);
- }
- void LeggiFile (FILE *fp, dipendente *vet, int *nPtr) {
- int i;
- fp = fopen("anagrafe.txt","r");
- if (fp==NULL) printf("\nERRORE NELL' APERTURA DEL FILE\n");
- else {
- i = 0;
- while (!feof(fp)) {
- fscanf(fp,"%s%s%d",&vet[i].cognomeDip,&vet[i].nomeDip,&vet[i].stipAnnuo);
- i++;
- }
- *nPtr = i;
- }
- fclose(fp);
- }
- void StampaDipendenti (dipendente *vet, int num) {
- int i;
- printf("\n\nDIPENDENTI CARICATI NEL VETTORE\n");
- for (i=0;i<num;i++) {
- printf("\nDIPENDENTE %d\n",i+1);
- printf("\nCognome: %s",vet[i].cognomeDip);
- printf("\nNome: %s",vet[i].nomeDip);
- printf("\nStipendio annuo: %d\n",vet[i].stipAnnuo);
- }
- }
- void RicercaDipendente (dipendente *vet, int num, int *posizPtr) {
- int m, inf, sup, posizione, val;
- char car;
- boolean trovato;
- printf("\nRICERCA DI UN DIPENDENTE PER STIPENDIO ANNUO\n");
- printf("\nInserisci lo stipendio annuo da ricercare: ");
- scanf("%d%c",&val,&car);
- posizione = -1;
- inf = 0;
- sup = num - 1;
- trovato = FALSE;
- while ((inf<sup)&&(trovato==FALSE)) {
- m = (inf + sup) / 2;
- if (val==vet[m].stipAnnuo) {
- trovato = TRUE;
- posizione = m;
- }
- else if (val<vet[m].stipAnnuo) sup = m - 1;
- else if (val>vet[m].stipAnnuo) inf = m + 1;
- }
- *posizPtr = posizione;
- }
- void StampaVal (dipendente *vet, int posiz) {
- if (posiz==-1) printf("\nNON ESISTE UN DIPENDENTE CON STIPENDIO UGUALE A VAL\n");
- else if (posiz>=0) {
- printf("\nDIPENDENTE TROVATO\n");
- printf("\nCognome: %s",vet[posiz].cognomeDip);
- printf("\nNome: %s",vet[posiz].nomeDip);
- printf("\nStipendio annuo: %d\n",vet[posiz].stipAnnuo);
- }
- }
Add Comment
Please, Sign In to add comment