검색어 입력폼

[이산수학 프로그래밍]후위연산소스

등록일 2006.07.09 파일확장자C언어 (cpp) | 가격 300원

소개글

스택형식으로 구현한

괄호부터해서 가감승제까지의 후위연산을 보이는 프로그램입니다.

식을 입력하면 후위연산식으로 변형되어 나타납니다.

컴파일 실행환경

C,C++

본문내용

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>

int postfix_char();
int Isp(char x);
int Icp(char x);

int count;
char input[50], comparison, comparison_1;

typedef struct node
{
char data;
struct node *link;
}linked_node;

linked_node *new_ad, *temp, *top;

int init_struct()
{
new_ad = (linked_node *)malloc(sizeof(linked_node));
new_ad->data=NULL;
new_ad->link=NULL;
top=new_ad;
return 0;
}

int push_struct()
{
if(new_ad->data==NULL)
{
new_ad->data=comparison;
}
else if(!new_ad->data==NULL)
{
new_ad = (linked_node *)malloc(sizeof(linked_node));
new_ad->data=comparison;
new_ad->link=top;
top=new_ad;
}

return 0;
}

int pop_struct()
{
char tmp;
temp=top;
tmp = top->data;
top = top->link;
free(temp);
printf("%c ", tmp);
return 0;
}

int postfix()
{
for(int j=0; j<count; j++)
{
comparison=input[j];
if(comparison>=`0` && comparison<=`9`)
{
printf("%c ", comparison);
continue;
}
else if(comparison==`*` || comparison==`/` || comparison==`+` || comparison==`-`)
{
postfix_char();
continue;
}
else
{
printf("\n잘못된 연산입니다.");
getch();
exit(1);
다운로드 맨위로