用栈实现逆序输出键盘输入
2009-08-17 15:38
393 查看
#include"stdlib.h"#include"stdio.h"typedef char StackEntry;typedef struct node { //链栈的结点结构StackEntry item; //栈的数据元素类型struct node *next; //指向后继结点的指针}NODE; typedef struct stack{NODE *top;}STACK; //初始化栈void InitStack(STACK *S){S->top=NULL;}//入栈void Push(STACK *S,StackEntry item){ NODE* p; p=(NODE*)malloc(sizeof(NODE)); if (!p) exit(0);else { p->item=item; p->next=S->top; S->top=p;}}//是否为空栈int StackEmpty(STACK S){if (S.top==NULL) return true;else return false;}//出栈 void Pop(STACK*S, StackEntry *item){NODE *p;if (StackEmpty(*S)) exit(0);else { *item=S->top->item;p=S->top;S->top=p->next; free(p); }}void ReverseRead( ){ STACK S; //定义一个栈结构Schar ch;InitStack(&S); //初始化栈while ((ch=getchar())!='/n') //从键盘输入字符,直到输入换行符为止Push(&S ,ch); //将输入的每个字符入栈while (!StackEmpty(S)) { //依次退栈并输出退出的字符Pop(&S,&ch);putchar(ch);}putchar('/n');}void main(){ReverseRead();}
相关文章推荐
- 用栈实现逆序输出键盘输入
- 用栈实现逆序输出键盘输入
- 输入k 实现链表每k项都逆序输出
- 指针访问方式从键盘给数组 a[N]输入数据, 然后对元素值重新按逆序存放并输出
- 80x86汇编编程:把一串字符从键盘输入,然后逆序输出
- python实现对指定输入的字符串逆序输出的6种方法
- C语言:用递归实现将输入的整数按逆序输出。如输入12345,则输出54321。
- 用switch 语句实现简单的计算器功能(要求从键盘输入操作数和运算符)。 例如:输入: 3 * 4 输出:12
- JAVA基础 day21 字节流的输入和输出 字节流的缓冲区 (自己实现BufferedInputStream) 键盘输入 转换流的用法 改变标准输入输出设备 IO流操作的基本规律
- 利用指针实现将5个整数输入到数组a中,然后将a逆序复制到数组b中,并输出b中各单元的值。
- 输入k 实现链表每k项都逆序输出
- java基础之IO流中实现对键盘和控制台的输入和输出以及写到文本文件
- 基于8051的扫描式键盘驱动和串并转换式显示编程实现人机I/O(键盘输入,数码管输出)
- 函数实现键盘输入整型数,将其转换成字符串输出。123456789 "123456789"
- 实现从控制台输入字符串,逆序打印输出
- 采用指针访问方式从键盘给数组a[N]输入数据,然后对元素值重新按逆序存放并输出
- 从键盘任意输入10个整数,用函数编程实现将其中最大数与最小数的位置对换后,再输出调整后的数组。
- java实现将一个键盘输入的阿拉伯数字转化成中文输出
- 从易到难编写C++程序,(1)问题:把键盘输入的字符串逆序输出。
- 用递归实现输入一系列整数后逆序输出