home *** CD-ROM | disk | FTP | other *** search
- #include <stdio.h>
-
- #define MAXVAL 100
-
- int sp = 0;
- double val[MAXVAL], push(double f), pop(void);
- void clear(void);
-
-
- double push(double f)
- {
- if (sp < MAXVAL)
- return(val[sp++] = f);
- else
- { printf("error: stack full\n");
- clear();
- return(0);
- }
- }
-
-
- double pop(void)
- {
- if (sp > 0)
- return(val[--sp]);
- else
- { printf("error: stack empty\n");
- clear();
- return(0);
- }
- }
-
-
- void clear(void)
- {
- sp = 0;
- }