martedì 14 aprile 2009

esercizio n.1 e n.3

1:
#include

FILE *f1;
FILE *f2;
int num;
void leggiScrivi(){
f1=fopen("esercizio1.txt","r");
f2=fopen("copia1.txt","w");
fscanf(f1,"%d\n",&num);
while(num!=999){
fprintf(f2,"%d\n",num);
fscanf(f1,"%d\n",&num);
}
fclose(f1);
fclose(f2);
}
main(){
leggiScrivi();
}

3:
#include

FILE *f1;
FILE *f2;
FILE *f3;
int a,b;
void unisci(){
f1=fopen("dati1.txt","r");
f2=fopen("dati2.txt","r");
f3=fopen("unione.txt","w");
fscanf(f1,"%d",&a);
while(a!=999)
fprintf(f3,"%d\n",a);
fscanf(f1,"%d",&a);
}
fscanf(f2,"%d",&b);
while(b!=999){
fprintf(f3,"%d\n",b);
fscanf(f2,"%d",&b);
}
fclose(f1);
fclose(f2);
fclose(f3);
}
void main(){
unisci();
}

compiti per le vacanze

1) leggere un file testo di numeri, e
a) scrivere i medesimi numeri su di un altro file
b) scrivere su di un altro file i numeri compresi in un intervallo
(a,b) dove a e b sono numeri digitati da tastiera
c) scrivere su di un altro file la somma, la media, il minimo,
il massimo dei precedenti numeri
d) scrivere su di un altro file i numeri in ordine inverso
e) scrivere per ognuno dei file la funzione di stampa
2) leggere un file costituito da record aventi due campi: un campo di tipo
string (array di char)
ed un secondo campo di tipo int
a) scrivere i medesimi record con i medesimi campi su di un altro file
b) scrivere su di un altro file i record che hanno i numeri compresi in un
intervallo (a,b), dove a e b sono numeri digitati da tastiera
c) scrivere su di un altro file i record in ordine inverso
d) scrivere la funzione che stampa i record dei files
3) dati due files con record contenenti solo un campo numerico,
a) scrivere un terzo file che unisca i due files precedenti
b) la funzione di stampa
4) dati due file con record con un solo campo numerico e ordinati in maniera
crescente,
a) fondere i precedenti files in un unico file, mantenendo l'ordine
crescente
b) la funzione di stampa