-
-
Save skhozinova/235661236363fe3cbf58e02ba2a2de46 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include<stdio.h> | |
#include<conio.h> | |
//инициализация очереди | |
void init_queue(tqueue *&h, tqueue *&t) | |
{h=t=NULL;} | |
//добавление элемента в очередь | |
void insert(tqueue *&h,tqueue *&t, int item) | |
{ | |
tqueue *r=new tqueue; | |
r->inf=item;r->next=NULL; | |
if (!h&&!t) | |
{ | |
h=t=r; | |
} | |
else | |
{ | |
t->next=r; | |
t=r; | |
} | |
} | |
//выборка элемента из очереди | |
int take(tqueue *&h, tqueue *&t) | |
{ | |
tqueue *r=h; | |
int i=r->inf; | |
h=r->next; | |
if (!h) | |
t=NULL; | |
delete r; | |
return i; | |
} | |
int main(void) | |
{ | |
FILE *h,*g; | |
h=fopen(“file1.txt”,”r”); //открываем файл h для чтения | |
int i; | |
tqueue *head,*tail;//описываем указатели на голову и хвост очереди | |
init_queue(head,tail);//инициализируем очередь | |
while(!feof(h)) //пока не достигнут конец файла h | |
{ | |
fscanf(h,”%d”,&i); //считываем из файла h очередной элемент | |
insert(head,tail,i);//добавляем его в очередь | |
} | |
fclose(h); //закрываем файл h | |
h=fopen(“file1.txt”,”w”); //открываем файл h для записи | |
g=fopen(“file2.txt”,”r”); //открываем файл g для чтения | |
while(!feof(g)) //пока не достигнут конец файла g | |
{ | |
fscanf(g,”%d”,&i); //считываем из файла g очередной элемент | |
fprintf(h,”%d ”,i);//записываем его в файл h | |
} | |
fcloseall(); //закрываем все файлы | |
g=fopen(“file2.txt”,”w”) // открываем файл g для записи | |
while (head) //пока очередь не пуста | |
{ | |
i=take(head,tail); // извлекаем из очереди элемент | |
fprintf(g,”%d ”,i);//записываем его в файл g | |
fclose(g);//закрываем файл g | |
return 0; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment