모바일 오유 바로가기
http://m.todayhumor.co.kr
분류 게시판
베스트
  • 베스트오브베스트
  • 베스트
  • 오늘의베스트
  • 유머
  • 유머자료
  • 유머글
  • 이야기
  • 자유
  • 고민
  • 연애
  • 결혼생활
  • 좋은글
  • 자랑
  • 공포
  • 멘붕
  • 사이다
  • 군대
  • 밀리터리
  • 미스터리
  • 술한잔
  • 오늘있잖아요
  • 투표인증
  • 새해
  • 이슈
  • 시사
  • 시사아카이브
  • 사회면
  • 사건사고
  • 생활
  • 패션
  • 패션착샷
  • 아동패션착샷
  • 뷰티
  • 인테리어
  • DIY
  • 요리
  • 커피&차
  • 육아
  • 법률
  • 동물
  • 지식
  • 취업정보
  • 식물
  • 다이어트
  • 의료
  • 영어
  • 맛집
  • 추천사이트
  • 해외직구
  • 취미
  • 사진
  • 사진강좌
  • 카메라
  • 만화
  • 애니메이션
  • 포니
  • 자전거
  • 자동차
  • 여행
  • 바이크
  • 민물낚시
  • 바다낚시
  • 장난감
  • 그림판
  • 학술
  • 경제
  • 역사
  • 예술
  • 과학
  • 철학
  • 심리학
  • 방송연예
  • 연예
  • 음악
  • 음악찾기
  • 악기
  • 음향기기
  • 영화
  • 다큐멘터리
  • 국내드라마
  • 해외드라마
  • 예능
  • 팟케스트
  • 방송프로그램
  • 무한도전
  • 더지니어스
  • 개그콘서트
  • 런닝맨
  • 나가수
  • 디지털
  • 컴퓨터
  • 프로그래머
  • IT
  • 안티바이러스
  • 애플
  • 안드로이드
  • 스마트폰
  • 윈도우폰
  • 심비안
  • 스포츠
  • 스포츠
  • 축구
  • 야구
  • 농구
  • 바둑
  • 야구팀
  • 삼성
  • 두산
  • NC
  • 넥센
  • 한화
  • SK
  • 기아
  • 롯데
  • LG
  • KT
  • 메이저리그
  • 일본프로야구리그
  • 게임1
  • 플래시게임
  • 게임토론방
  • 엑스박스
  • 플레이스테이션
  • 닌텐도
  • 모바일게임
  • 게임2
  • 던전앤파이터
  • 마비노기
  • 마비노기영웅전
  • 하스스톤
  • 히어로즈오브더스톰
  • gta5
  • 디아블로
  • 디아블로2
  • 피파온라인2
  • 피파온라인3
  • 워크래프트
  • 월드오브워크래프트
  • 밀리언아서
  • 월드오브탱크
  • 블레이드앤소울
  • 검은사막
  • 스타크래프트
  • 스타크래프트2
  • 베틀필드3
  • 마인크래프트
  • 데이즈
  • 문명
  • 서든어택
  • 테라
  • 아이온
  • 심시티5
  • 프리스타일풋볼
  • 스페셜포스
  • 사이퍼즈
  • 도타2
  • 메이플스토리1
  • 메이플스토리2
  • 오버워치
  • 오버워치그룹모집
  • 포켓몬고
  • 파이널판타지14
  • 배틀그라운드
  • 기타
  • 종교
  • 단어장
  • 자료창고
  • 운영
  • 공지사항
  • 오유운영
  • 게시판신청
  • 보류
  • 임시게시판
  • 메르스
  • 세월호
  • 원전사고
  • 2016리오올림픽
  • 2018평창올림픽
  • 코로나19
  • 2020도쿄올림픽
  • 게시판찾기
  • 게시물ID : programmer_20079
    작성자 : 컴퓨터소년
    추천 : 1
    조회수 : 586
    IP : 122.45.***.161
    댓글 : 0개
    등록시간 : 2017/03/26 20:57:25
    http://todayhumor.com/?programmer_20079 모바일
    c언어 계산기
    <div>#define _CRT_SECURE_NO_WARNINGS</div> <div><br></div> <div>#include<stdio.h></div> <div>#include<stdlib.h></div> <div>#include<string.h></div> <div><br></div> <div>#define MAX_STACK_SIZE 100  //스택 크기</div> <div>#define MAX_EXPR_SIZE 100  //식 크기</div> <div>typedef enum { lparen, rparen, plus, minus, times, divide, mod, eos, operand } precedence;</div> <div>int stack[MAX_STACK_SIZE];</div> <div>char expr[MAX_EXPR_SIZE];</div> <div>char exprt[MAX_EXPR_SIZE];</div> <div><br></div> <div>int eval();</div> <div>void postfix();</div> <div>char print_token(precedence); //precedence->우선순위</div> <div>precedence get_token(char*, int*);</div> <div>void add(int*, int); //추가</div> <div>int delete(int*); //삭제</div> <div>void stack_full();  //차있는 스택</div> <div>void stack_empty(); //비어있는 스택</div> <div><br></div> <div><br></div> <div>static int isp[] = { 0,19,12,12,13,13,13,0 };</div> <div>static int icp[] = { 20,19,12,12,13,13,13,0 };</div> <div><br></div> <div><br></div> <div>void main() {</div> <div><br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>printf("잠깐\a!!! 문제를 내라 만약 어려우면 지나가게 해주지!!!크흐흐흐  : \n");</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>scanf("%s", expr);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>postfix(expr,exprt);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>printf("expr =%s\n", expr);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>printf("exprt=%s\n", exprt);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>strcpy(exprt, expr);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>printf("크흐흐 쉽구만 겨우 이정도 문제를 내다니 크ㅋ흐ㅋㅎㅋ흐 \n");</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>printf("답은 %d다. 내가 맞췄으니 넌 내 먹이다 \'냠\'!!!", eval());</div> <div>}</div> <div><br></div> <div><br></div> <div>void postfix() //후위 표기식</div> <div>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>char symbol;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>precedence token;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>int n = 0;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>int i = 0;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>int top = -1;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>stack[++top] = eos;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>for (token = get_token(&symbol, &n); token != eos; token = get_token(&symbol, &n))</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if (token == operand)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>exprt[i++] = symbol;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>else if (token == rparen)//괄호가 닫힐 때까지</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>while (stack[top] != lparen)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>exprt[i++] = print_token(delete(&top));</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>delete(&top);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>else</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>while (isp[stack[top]] >= icp[token])</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>exprt[i++] = print_token(delete(&top));</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>add(&top, token);</div> <div><br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>while ((token = delete(&top)) != eos)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>exprt[i++] = print_token(token);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>exprt[i] = '\0';</div> <div><br></div> <div>}</div> <div><br></div> <div>char print_token(precedence t)</div> <div>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>switch (t)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case plus:</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>return '+';</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case minus:</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>return '-';</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case times:</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>return '*';</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case divide:</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>return '/';</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case mod:</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>return'%';</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>return'\0';</div> <div>}</div> <div>int eval(void)</div> <div>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>precedence token;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>char symbol;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>int op1, op2; //지워진 값 기억하는 변수</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>int n = 0;  //문자열 수</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>int top = -1;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>token = get_token(&symbol, &n);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>while (token != eos)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if (token == operand)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>add(&top, symbol - '0'); //슬택에 추가</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>else</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>op2 = delete(&top);//삭제된 스택을 저장</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>op1 = delete(&top);//        ||(위와 같다)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>switch (token)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case plus:</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>printf("%d %d + =%d\n", op1, op1, op1 + op2);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>add(&top, op1 + op2);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case minus:</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>printf("%d %d - =%d\n", op1, op1, op1 - op2);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>add(&top, op1 - op2);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case times:</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>printf("%d %d * =%d\n", op1, op1, op1 * op2);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>add(&top, op1 * op2);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case divide:</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>printf("%d %d / =%d\n", op1, op1, op1 / op2);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>add(&top, op1 / op2);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case mod:</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>printf("%d %d % =%d\n", op1, op1, op1 % op2);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>add(&top, op1 % op2);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>token = get_token(&symbol, &n);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>return delete(&top); //결과를 돌려줌</div> <div>}</div> <div><br></div> <div>precedence get_token(char*symbol, int*n)</div> <div>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>*symbol = expr[(*n)++];</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>switch (*symbol)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case'(':</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>return lparen;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case')':</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>return rparen;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case'+':</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>return plus;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case'-':</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>return minus;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case'*':</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>return times;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case'/':</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>return divide;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case'%':</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>return mod;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>case'\0':</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>return eos;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>default:</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>return operand;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div>}</div> <div><br></div> <div><br></div> <div>void add(int *top, int item)//습택에 item추가</div> <div>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if (*top >= MAX_STACK_SIZE - 1)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>stack_full();</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>return;</div> <div><br></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>stack[++*top] = item;</div> <div>}</div> <div><br></div> <div>int delete(int*top)</div> <div>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if (*top == -1)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>stack_empty();</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>return stack[(*top)--];</div> <div>}</div> <div><br></div> <div>void stack_full()</div> <div>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>fprintf(stderr, "자리없다.임마 꽉 찻어\n");</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>exit(1);</div> <div>}</div> <div><br></div> <div>void stack_empty()</div> <div>{</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>fprintf(stderr, "아무것도 없다. 임마 비었어\n");</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>exit(1);</div> <div>}</div>
    컴퓨터소년의 꼬릿말입니다
    실행은 되는데 값이 달라요 도와주세요 ㅠㅠ  제가 c언어를 잘 못해서요...

    이 게시물을 추천한 분들의 목록입니다.
    [1] 2017/03/26 23:04:47  61.77.***.120  하루빠  718192
    푸르딩딩:추천수 3이상 댓글은 배경색이 바뀝니다.
    (단,비공감수가 추천수의 1/3 초과시 해당없음)

    죄송합니다. 댓글 작성은 회원만 가능합니다.

    번호 제 목 이름 날짜 조회 추천
    20080
    유니티 버튼으로 캐릭터 움직이는것 관련해서 질문드립니다 ㅠ [5] 창작글베스트금지베오베금지본인삭제금지외부펌금지 줄무늬니삭스 17/03/26 22:14 943 0
    c언어 계산기 컴퓨터소년 17/03/26 20:57 587 1
    20078
    매트랩 시뮬링크 관련 엄청 기초적인 질문 하나만 할게요ㅠㅠㅠ [1] 본인삭제금지 윈터드림 17/03/26 19:11 351 0
    20077
    C++ 레퍼런스를 리턴하는 함수 질문드립니다. [3] 본인삭제금지 Intel 17/03/26 15:38 378 0
    20074
    다른 나라에서는 변수이름을 그 나라말로 짓나요? [13] 우이독경 17/03/26 10:14 767 0
    20073
    손동작 인식 프로그램 [9] 본인삭제금지 우리집돌쇠 17/03/25 22:44 947 0
    20070
    안드로이드에선 로그인 처리를 어떻게 하나요? [3] 본인삭제금지 Get-Jinxed! 17/03/25 19:38 367 0
    20069
    앱초보- 안드로이드 앱 만들고있어요, 세금관련 질문입니다 본인삭제금지 퍼퍼퍼 17/03/25 18:12 296 0
    20068
    클래스 생성할때 규칙이요 질문입니다. [4] 김폽 17/03/25 16:50 314 0
    20066
    간단한 코드 nth-child 질문해요 ㅠ [1] 본인삭제금지 lilyane 17/03/25 16:20 376 0
    20065
    단속 카메라 시스템 공격 [6] 옥군 17/03/25 14:54 688 6
    20064
    자바 제네릭 관련해서 한가지 질문이 있습니다 ㅠ [2] 본인삭제금지 메이가왔어요 17/03/25 14:40 344 0
    20063
    [본삭금] 서버 연결부하 질문입니다. [3] 본인삭제금지 베오베감별사 17/03/24 23:20 296 0
    20062
    자바 여쭤볼게 있습니다요!! [7] 본인삭제금지 김폽 17/03/24 21:33 424 0
    20061
    C++ console으로 테트리스 만드는 방법 [10] MAJOR 17/03/24 21:15 1179 0
    20060
    전화면접 말투 어떻게 해야할까요? [1] 아도히 17/03/24 16:11 591 0
    20059
    이제 막 공부 시작한 대학1학년인데요 자바 관련 [5] 본인삭제금지 형아거긴안돼 17/03/24 14:42 492 0
    20058
    유동VPN 괜찮은곳 추천 좀 부탁해요 [1] 본인삭제금지 fine... 17/03/24 14:39 354 0
    20056
    안드로이드 스튜디오 AVD/SDK manager 관련 질문입니다. [4] 본인삭제금지 메이가왔어요 17/03/24 10:25 683 0
    20052
    엑셀 고수님들 계신가요??ㅠ [7] 외부펌금지 오리엔진 17/03/24 07:01 575 0
    20051
    Ui developer 와 designer 의 차이점이 뭔가요? [5] 이번엔꼭뺀다 17/03/24 00:28 475 0
    20050
    머신러닝 캠프 in 제주도 [3] 탐켄치 17/03/23 21:18 1316 0
    20049
    프로그래머님들. 여쭤보고싶은게 있습니다. [8] 본인삭제금지 홍케익 17/03/23 17:50 748 1
    20048
    솔로몬의 선택... 여러분들의 선택은?? [7] 본인삭제금지 S2하늘사랑S2 17/03/23 16:56 534 0
    20047
    javascript 질문 드립니다. [13] 창작글본인삭제금지 효자동사거리 17/03/23 16:08 846 0
    20046
    되는데 이유를 모르겠어요. 야간산책 17/03/23 15:47 444 3
    20045
    OS161 해보신분 계신가요?? 금연07132016 17/03/23 14:39 297 0
    20044
    여기 VR 개발자도 있나요? 개발 팁 가져옴 창작글 동그라미땡 17/03/23 12:29 759 3
    20042
    명언3 [11] 크고거대한거 17/03/23 09:33 1107 5
    20041
    명언2 크고거대한거 17/03/23 09:29 666 4
    [◀이전10개] [91] [92] [93] [94] [95] [96] [97] [98] [99] [100] [다음10개▶]
    단축키 운영진에게 바란다(삭제요청/제안) 운영게 게시판신청 자료창고 보류 개인정보취급방침 청소년보호정책 모바일홈