SlideShare una empresa de Scribd logo
1 de 3
Descargar para leer sin conexión
#include <stdio.h> //for print<br />#include <stdlib.h>//for malloc<br />typedef struct ns {<br />        int data;<br />        struct ns *next;<br />} node;<br />node *list_add(node**p, int i) {<br />     //algunos compiladores no requieren un casting del valor del retorno para malloc<br />     node *n = (node *)malloc(sizeof(node));<br />     if (n== NULL)<br />        return NULL;<br />     n-> next = *p;<br />     *p = n;<br />     n->data = i;<br />     return n;<br />}<br />void list_remove(node**p) { //borrar cabeza<br />     if (*p !=NULL) {<br />            node *n = *p;<br />            *p = (*p)->next;<br />               free(n);<br />               }<br />            }<br />            node **list_searc(node **n, int i) {<br />                 while (*n !=NULL) {<br />                       return n;<br />                 }<br />                 n = &(*n)->next;<br />            }<br />            return NULL;<br />     }<br />     void list_print(node *n) {<br />          if (n ==NULL) {<br />                PRINTF(quot;
lista esta vacia =nquot;
);//FALTA DATO<br />          }<br />          while (n !=NULL) {<br />                PRINTF(quot;
print %p %p %d%nquot;
, N, ,->NEXT, N->DATA);//FALTA DATO<br />                n = n->next;<br />          }<br />     }<br />     int main(void) {<br />         node *n = NULL;<br />         <br />         list_add(&n, 0); //lista: 0<br />         list_add(&n, 1); //lista: 1 0<br />         list_add(&n, 2); //lista: 2 1 0<br />         list_add(&n, 3); //lista: 3 2 1 0<br />         list_add(&n, 4); //lista: 4 3 2 1 0<br />         list_print(n);<br />         list_remove(&n->next);<br />         list_remove(list_search(&n, !));//en duda el dato<br />         list_remove(&n->next);<br />         list_remove(&n);<br />         list_print(n);<br />         <br />         return 0;<br />     }<br />
Pilas
Pilas

Más contenido relacionado

La actualidad más candente (20)

Power%20compounding
Power%20compoundingPower%20compounding
Power%20compounding
 
Trabajo de programacion
Trabajo de programacionTrabajo de programacion
Trabajo de programacion
 
C언어 스터디 강의자료 - 3차시
C언어 스터디 강의자료 - 3차시C언어 스터디 강의자료 - 3차시
C언어 스터디 강의자료 - 3차시
 
Cpro
CproCpro
Cpro
 
Bubble sort
Bubble sortBubble sort
Bubble sort
 
Include
IncludeInclude
Include
 
C언어 스터디 강의자료 - 4차시
C언어 스터디 강의자료 - 4차시C언어 스터디 강의자료 - 4차시
C언어 스터디 강의자료 - 4차시
 
C언어 스터디 강의자료 - 2차시
C언어 스터디 강의자료 - 2차시C언어 스터디 강의자료 - 2차시
C언어 스터디 강의자료 - 2차시
 
07 3 do-while반복문
07 3 do-while반복문07 3 do-while반복문
07 3 do-while반복문
 
Sum2
Sum2Sum2
Sum2
 
C - Pattern - Code - [Future Programming]
C - Pattern - Code - [Future Programming]C - Pattern - Code - [Future Programming]
C - Pattern - Code - [Future Programming]
 
Absolute Loader
Absolute LoaderAbsolute Loader
Absolute Loader
 
MCD
MCDMCD
MCD
 
latihan SAP
latihan SAPlatihan SAP
latihan SAP
 
Funciones
FuncionesFunciones
Funciones
 
Union
UnionUnion
Union
 
Gauss jordan
Gauss jordanGauss jordan
Gauss jordan
 
Program to remove Left factoring
Program to remove Left factoringProgram to remove Left factoring
Program to remove Left factoring
 
listing output program C
listing output program Clisting output program C
listing output program C
 
Event loops in java script 01 - stack
Event loops in java script 01 - stackEvent loops in java script 01 - stack
Event loops in java script 01 - stack
 

Destacado

(2012-01-17)Exploración neurológica de pares craneales.ppt
(2012-01-17)Exploración neurológica de pares craneales.ppt(2012-01-17)Exploración neurológica de pares craneales.ppt
(2012-01-17)Exploración neurológica de pares craneales.pptUDMAFyC SECTOR ZARAGOZA II
 
Exploracion de los pares craneales
Exploracion de los pares cranealesExploracion de los pares craneales
Exploracion de los pares cranealesDrAngelMartinez
 
Semiologia Pares Craneales
Semiologia Pares Craneales Semiologia Pares Craneales
Semiologia Pares Craneales Silvia Caballero
 
Exploración clínica de pares craneales
Exploración clínica de pares cranealesExploración clínica de pares craneales
Exploración clínica de pares cranealesJoséLuis Ruiz
 
Funciones de los 12 Nervios Craneales
Funciones de los 12 Nervios CranealesFunciones de los 12 Nervios Craneales
Funciones de los 12 Nervios CranealesYngri Rojas Olivera
 

Destacado (6)

(2012-01-17)Exploración neurológica de pares craneales.ppt
(2012-01-17)Exploración neurológica de pares craneales.ppt(2012-01-17)Exploración neurológica de pares craneales.ppt
(2012-01-17)Exploración neurológica de pares craneales.ppt
 
Exploracion de los pares craneales
Exploracion de los pares cranealesExploracion de los pares craneales
Exploracion de los pares craneales
 
Pares craneales
Pares cranealesPares craneales
Pares craneales
 
Semiologia Pares Craneales
Semiologia Pares Craneales Semiologia Pares Craneales
Semiologia Pares Craneales
 
Exploración clínica de pares craneales
Exploración clínica de pares cranealesExploración clínica de pares craneales
Exploración clínica de pares craneales
 
Funciones de los 12 Nervios Craneales
Funciones de los 12 Nervios CranealesFunciones de los 12 Nervios Craneales
Funciones de los 12 Nervios Craneales
 

Pilas

  • 1. #include <stdio.h> //for print<br />#include <stdlib.h>//for malloc<br />typedef struct ns {<br /> int data;<br /> struct ns *next;<br />} node;<br />node *list_add(node**p, int i) {<br /> //algunos compiladores no requieren un casting del valor del retorno para malloc<br /> node *n = (node *)malloc(sizeof(node));<br /> if (n== NULL)<br /> return NULL;<br /> n-> next = *p;<br /> *p = n;<br /> n->data = i;<br /> return n;<br />}<br />void list_remove(node**p) { //borrar cabeza<br /> if (*p !=NULL) {<br /> node *n = *p;<br /> *p = (*p)->next;<br /> free(n);<br /> }<br /> }<br /> node **list_searc(node **n, int i) {<br /> while (*n !=NULL) {<br /> return n;<br /> }<br /> n = &(*n)->next;<br /> }<br /> return NULL;<br /> }<br /> void list_print(node *n) {<br /> if (n ==NULL) {<br /> PRINTF(quot; lista esta vacia =nquot; );//FALTA DATO<br /> }<br /> while (n !=NULL) {<br /> PRINTF(quot; print %p %p %d%nquot; , N, ,->NEXT, N->DATA);//FALTA DATO<br /> n = n->next;<br /> }<br /> }<br /> int main(void) {<br /> node *n = NULL;<br /> <br /> list_add(&n, 0); //lista: 0<br /> list_add(&n, 1); //lista: 1 0<br /> list_add(&n, 2); //lista: 2 1 0<br /> list_add(&n, 3); //lista: 3 2 1 0<br /> list_add(&n, 4); //lista: 4 3 2 1 0<br /> list_print(n);<br /> list_remove(&n->next);<br /> list_remove(list_search(&n, !));//en duda el dato<br /> list_remove(&n->next);<br /> list_remove(&n);<br /> list_print(n);<br /> <br /> return 0;<br /> }<br />