Как внести несколько элементов из структуры в стек? - C (СИ)

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

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

Я ввожу данные с клавиатуры.Элементы в структуре. Не могу понять как их внести в стек.
#include <conio.h>
#include <stdio.h>
#include < iostream>
#define ERROR_OPEN_FILE -3 
 
struct semicircle{
    int x;
    int y;
    int x0;
    int y0;
    int r; 
    semicircle *next;
};

void main(int argc, char *argv[]) { 
struct semicircle sm ; 
int answer; 
int value = 0; 
int menu; 
int yn; 
start: 
printf("\nDo your selection:\n1.List\n2.Add\n3.Find\n4.Exit\n"); 
printf("Selection: "); 
scanf("%d",&menu); 
   
if (menu==1){  label1:

printf ("\nSelect an option: 1-Continue or 0-Exit\n");
 scanf("%d",&answer);
  if(answer == 1)
 {goto start;}
  else
 {goto exit;}} 
  else if(menu==2){
printf ("\nSelect an option: 1-Continue or 0-Exit\n");
 scanf("%d",&answer);
  if(answer == 1)
 {goto start;}
  else
 {goto exit;}
}
  else if(menu==3){label3:    
 
printf ("\nSelect an option: 1-Continue or 0-Exit\n");
 scanf("%d",&answer);
  if(answer == 1)
 {goto start;}
  else
 {goto exit;}
}
else if(menu==4);{
    exit:
    exit(0);}
}

Решение задачи: «Как внести несколько элементов из структуры в стек?»

textual
Листинг программы
void search(semicircle *begin,double s){
semicircle *new_el=begin;
            while (new_el!=NULL)
             { if(s==new_el->x){
              printf(" %f\t",new_el->x);}
// выводим содержимое полей элемента
              new_el=new_el->next;}
               printf(" \n");
     }

Объяснение кода листинга программы

  1. В данном коде происходит поиск элемента в списке по заданному значению s.
  2. Переменная new_el инициализируется значением begin, что указывает на начало списка.
  3. Затем в цикле while происходит проход по всем элементам списка до тех пор, пока new_el не станет равным NULL, что означает достижение конца списка.
  4. Внутри цикла проверяется равенство значения s и значения поля x текущего элемента списка new_el. Если равенство найдено, то выводится значение поля x с помощью функции printf.
  5. После выхода из цикла while выводится символ новой строки с помощью функции printf для перехода на новую строку вывода.

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


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

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

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