Очередь из элементов следующей структуры: Город , Год , Температура, Осадки
Текст программы:
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
// Описание структуры
struct ELEM
{ char gorod[15];
int god;
float temp;
float osadki;
ELEM *next; };
// Ввод полей структуры
void vvod (ELEM *tek)
{ cout<<"\nВведите данные:";
cout<<"\n город\t";
gets(tek->gorod);
cout <<"год\t";
cin >> tek->god;
cout<<"температура\t";
cin >> tek->temp;
cout<<"осадки\t";
cin >> tek->osadki; }
void main()
{
ELEM *nach, *kon, *tek, *old, *new_n; // Указатели на начало очереди, конец очереди
// текущий элемент, старый элемент, новый элемент
char otvet='д'; // Признак продолжения ввода данных "д" - продолжить ввода
// "н" - окончить ввод
nach=0;
kon=0;
do
{
new_n=new ELEM;
vvod (new_n);
new_n->next=0;
if (nach)
{
kon->next=new_n;
kon=new_n;
}
else
{
nach=new_n;
kon=new_n;
}
cout <<"\tБудете вводить данные ? (д/н)";
cin >> otvet;
}
while ((otvet=='д')||(otvet=='Д'));
cout <<"\n Обработка очереди \t";
tek=nach;
while (tek)
{
cout<<"\n Элемент: ";
cout<<"\n город\t" << tek->gorod;
cout <<"\n год\t" << tek->god;
cout <<"\n температура\t" << tek->temp;
cout<<"\n осадки\t" << tek->osadki;
old=tek;
tek=tek->next;
delete old;
cout << "\n\t Обработан и удален";
}
getch();
}
Исполняемый файл pr6_0.exe (упакованный)
|