使用链表:建立一个后入先出的栈,将输入的一串字符反序输出。
提示:输入字符串以#结束。
使用链表:建立一个后入先出的栈,将输入的一串字符反序输出。
提示:输入字符串以#结束。
#include <stdio.h>
#include <stdlib.h>
typedef struct SingleChar{
char c;
struct SingleChar* next;
}SingleChar_t;
SingleChar_t* head = NULL;
void DisplayNode(SingleChar_t *temp){
printf("%c", temp->c);
if(temp->next == NULL) printf("\n");
}
void ScanList(){
SingleChar_t *temp = head;
while(temp != NULL) {
DisplayNode(temp);
temp = temp->next;
}
}
void AddListEnd(SingleChar_t* temp){
temp->next = head;
head = temp;
}
void main(){
char temp;
SingleChar_t* chr;
while(1){
scanf("%c",&temp);
if(temp == '#') break;
chr = (SingleChar_t*)malloc(sizeof(SingleChar_t));
chr->c = temp;
AddListEnd(chr);
}
ScanList();
}