fp1=fopen(f1,"r"); // Faili avamine lugemiseks
if (fp1==NULL) // Kontrollime, kas fail on olemas
{
printf("Sisendfaili %s avamine ebaõnnestus!n",f1);
exit(1); // Programmi töö lõpetamine
}
else
{
while (!feof(fp1))
{
fgets(rida,122,fp1); // Failist andmete lugemine ridade kaupa
p=strlen(rida);
if (p>1) n++; // Kontrollime, et failirida ei koosneks üksnes reavahetusest
}
}
fclose(fp1);
return n; // Tagasta ridade arv sisendfailis
}
/** Funktsioon väljundfailide tekitamiseks ning tühjendamiseks **/
void tekita_failid(void)
{
fp2=fopen(f2,"w");
fclose(fp2);
fp3=fopen(f3,"w");
fclose(fp3);
return;
}
/** Funktsioon isikuandmete väljastamiseks failidesse **/
void andmed_failidesse(void)
{
fp2=fopen(f2,"a");
fp3=fopen(f3,"a");
for (i=0;i
if (!vf) /* kui väljundfaili loomine ebaõnnestus */ { printf("Väljundfaili ei õnnestunud luua.n"); printf("Palun kontrollige, ega ketas pole write-protected!"); return 0; } while (!feof(sf)) /* kordame, kuni pole jõudnud faili lõppu */ { fscanf(sf, "%c", &c); if (!feof(sf)) /* väldime ülearuse viimase rea tekkimist */ /* ilma selle kontrollita lisatakse väljundfaili */ /* lõppu üks tühi rida, mida sisendfailis ei ole. */ fprintf(vf, "%c", toupper(c)); } fclose(sf); /* sulgeme failid */ fclose(vf); return 0; } /* P r o g r a m m i l õ p p */ Selles programmis on kasutatud eelkontrolliga korduslauset eeskätt sellepärast, et faili pikkus ja seega ka korduste arv ei ole teada. Kui sisendfail on tühi, siis ei ole vajadust ühtegi sümbolit läbi vaadata. Näide 3. Ü l e s a n n e: Leida kõik algarvud, mis on väiksemad kui 1000. Ma loodan, et Te teate, mis on algarv