Структура данных — стек (в стек, из стека, отображение верхнего элемента стека)

Выполните домашнее задание по курсу структур данных, запишите его.

Программное обеспечение для компиляции: Dev-C++

 

Первый: втолкнуть в стек, вытолкнуть из стека

Код реализации:

#include<stdio.h> 
typedef struct
{    int x[10];    внутренний верх; }куча;


void initstack(stack *s)
{   s->top==-1; } int empty(stack *s) {   if (s->top==-1) return 1; иначе вернуть 0; } int full(stack *s) {   if (s->top==10-1) return 1; иначе вернуть 0; } pushstack(stack *s,int b) {    if(full(s)) {    ("栈满了\n");     вернуть 0; } с->верх++; s->x[s->top]=b; } int popstack(stack *s) {    if (пусто(s)) {printf("该栈为空,不需要出栈\n");} int t;t=s->x[s->top] ; с->верх--; вернуть т; }
































int main()
{stack S;
int a,i;
initstack(&S);
printf("Пожалуйста, введите элемент стека:\n"); 
for(i=0;i<7;i++)
{ scanf("%d " ,&a); pushstack(&S,a);} for(i=0;i<7;i++) printf("Элементом всплывающего окна является %d\n",popstack(&S)); return 0; }





результат операции:

Второе: отображать верхний элемент стека

Код реализации:

#include<stdio.h>
#include<malloc.h>
#include<stdlib.h>
typedef struct linknode
{     int data;     struct linknode *следующий; }узел;


typedef struct

    struct linknode *top;
}куча;

void init(stack *k)
{     k->top=NULL; } void push(stack *k,int x) {     node *s=(node ​​*)malloc(sizeof(node));     с->данные=х;     s->следующий=k->верхний;     к->верх=с; } int pop(stack *k) {     if(k->top!=NULL) {     node *q;     д=к->верх;     интервал x=q->данные;     k->top=q->следующий;     бесплатно (к); вернуть х;   } } int get(stack *k) {     if(k->top!=NULL)     return k->top->data; int main() {     стек s1,*t;     в а, я;






























    t=&s1;
    init(t);
    printf("Пожалуйста, введите элемент стека:\n");
    for(i=0;i<9;i++)
    {         scanf("%d",&a);         push(t, a);     }     pop(t);     printf("Верхний элемент стека: %d\n", get(t));     return 0;  }






результат операции:

 

 

 

рекомендация

отblog.csdn.net/qq_57409899/article/details/124209506
рекомендация