Реализовать все возможные операции для очереди на основе массива - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Доброго времени суток) кому не составит большого труда, прошу помочь с заданием) Реализовать все возможные операции для статической очереди на основе массива: добавление элемента в конец очереди, поиск элемента в очереди, удаление элемента из очереди.

Решение задачи: «Реализовать все возможные операции для очереди на основе массива»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <locale.h>
#define N 10
 
void vvod_ochered(int mas[],int *kol,int *end)
{
if((*kol)==N){
printf("\nОчередь заполнена!\n");}
else{
printf("\nВведите элемент очереди:");
scanf("%d",&mas[(*end)]);
(*kol)++;
(*end)++;}
}
 
void vivod_ochered(int mas[],int end,int start,int kol)
{
printf("\nОчередь:");
int i,j;
j=0;
for(i=end-1;i>=start;i--,j++)
{
if(j<kol)
printf("%d ",mas[i]);
}
}
 
void del_ochered(int mas[],int *kol,int *start)
{
if((*kol)==0)
{
printf("\n0 элементов в очереди!\n");
}
else
{
printf("Удалить элемент %d",mas[(*start)]);
(*start)++;
(*kol)--;
}
}
 
int main()
{ setlocale (LC_ALL, "Russian");
int mas[N+20];
int S,P,n=0,start=0,end=0;
for(;;)
{
 
printf("\n1.Добавление элемента\n2.Удалить элемент\n3.Вывод очереди\n4.Выход\n:");
scanf("%d",&S);
switch(S)
{
case 1:vvod_ochered(mas,&n,&end);break;
case 2:del_ochered(mas,&n,&start);break;
case 3:vivod_ochered(mas,end,start,n);break;
case 4:return 0;
}
}
 
 
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.1 из 5
Похожие ответы