스택(stack) 프로그램
본 자료는 1페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
해당 자료는 1페이지 까지만 미리보기를 제공합니다.
1페이지 이후부터 다운로드 후 확인할 수 있습니다.

본문내용

본문
#include
#include
#include
#include
#define MAX 100 //최대 스택의 크기
enum precedence {lparen, rparen, plus, minus, times, divide, wtimes, eos, operand, error};
//사용자 정의형 enum precedence를 생성하고, {}안에는 열거형 식별자 선언
precedence stack[MAX]; //stack크기가 100
int stack2[MAX];
char expr[MAX];
char STR[10];
static int isp[]={0, 9, 12, 12, 13, 13, 13, 0};
static int icp[]={20, 19, 13, 12, 13, 13, 20, 0};
//연산자 lparen, rparen, plus, minus, times, divide, wtimes, eos, operand, error의 우선순위 값
......
switch(key) { // 각 연산항들을 계산한다음 stack에 저장
case plus : stack2[*top2] = op1+op2;
data = `+`;
break;
case minus : stack2[*top2] = op1-op2;
data = `-`;
break;
case times : stack2[*top2] = op1*op2;
data = `*`;
break;
case divide : stack2[*top2] = op1/op2;
data = `/`;
break;
case wtimes : stack2[*top2] = pow(op1,op2); //op1의 op2승 수
data = `^`;
}
printf(` %c`,data);
}

키워드

  • 가격1,000
  • 페이지수5페이지
  • 등록일2003.12.17
  • 저작시기2003.12
  • 파일형식워드(doc)
  • 자료번호#238731
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니