30/09/2018, 20:50

STACK- nhập xâu kí tự

mình nhạp xâu nhwung khi in ra lại toàn in ra số. mn xem giúp e lỗi ở đâu ạ.

#include<iostream>
#include<string.h>
using namespace std;
struct node{
	int data;
	struct node *next;
};
typedef struct node *stack;
void init(stack &s){
	s=NULL;
}
node *getnode(char x){
	node *p=new node;
	p->data=x;
	p->next=NULL;
	return p;
}
int empty(stack s){
	if(s==NULL) return 1;
	return 0;
}
void push(stack &s,char x){
	node *p,*q;
	p=getnode(x);
	if(s==NULL) {
		s=p;
	}
	else {
		q=s;
		p->next=q;
		s=p;
	}
}
node *pop(stack &s){
	node *q;
	if(empty(s)) cout<<" stack rong.";
	else {
		q=s;
		cout<<q->data;
		s=s->next;
		delete q;
	}
	return s;
}
void hienthi(stack &s){
	node *q;
	if(empty(s)) cout<<"Stack rong.";
	else {
		while(s->next!=NULL){
			cout<<s->data<<"  ";
			s=s->next;
		}
		cout<<s->data;
	}
}
void nhap(stack &s,string str){
//	cout<<" Nhap xau: ";	getline(cin,str);
	for(int i=0;i<str.size();i++)
		push(s,str[i]);
}
int main(){
	string str;
	str="Xau ki tu";
	stack s;
	init(s);
	nhap(s,str);
	cout<<"stack: ";
 	hienthi(s);
}
viết 23:05 ngày 30/09/2018
struct node{
	int data;
	struct node *next;
};

sửa lại kiểu của datachar là xong

... viết 22:57 ngày 30/09/2018

à, v mà mk k nhìn ra. thank bạn nhiều nha.

Bài liên quan
0