Turbo-C
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
터보-C 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
Lua 게시판
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C/C++ Q/A
[6013] Re:문제에 대해서 급질문..
태즈 [taz1000] 2115 읽음    2007-05-30 16:50
도움 안되는 답글이지만...

C 책이나 홈페이지에서 '디버깅 하는 방법'을 좀 찾아보세요.
변수의 값을 보면서 추적하는 방법은 꼭 필요한 방법일듯 싶습니다.


왕초보연습생 님이 쓰신 글 :
: 일단 대학교 2학년 입니다..
:
: 이정도의 학교에서 배우는 수준이라고 생각해주세요..
:
: 아래는 이런 문제입니다.
:
: 15개의 문장를 2번 받아서
:
: 첫번째 받은 문장의 4번째 글자 뒤에
:
: 2번째 문장이 오게 하고
:
: 그다음 다시 남은 첫번째 문장이 나오게 하는건데요
:
: 스트링함수 전혀 쓰지 말고 기본으로 하라고 하더라구요..
:
: 함수를 꼭 사용하게 하라고 해서 어찌 짰는데 리턴값이 이상한거 같아요..
:
: 저 함수를 메인에 넣어서 실행하면 잘 되는데
:
: 함수에서 실행해서 리턴받으니 이상한 값만 나오네요..
:
: 어떤문제인지라도 가르쳐 주십사 하고 찾는중 이곳으로 왔어요..
:
: 부탁드립니다(__)
:
:
: #include <stdio.h>
:
: char funchar(char a[15], char b[15], int c, int d);
:
: int main(void)
: {
:     //변수선언
:     char inp1[100];
:     char inp2[100];
:     char outp[30];
:     int i;
:     int cnt1;
:     int cnt2;
:    
:     //받아오기
:     printf("첫번째 문장을 입력하시오:");
:     gets(inp1);
:     printf("두번째 문장을 입력하시오:");
:     gets(inp2);
:    
:     //15자 글자 제한 & 카운트 초기화
:     inp1[15] = '\0';
:     inp2[15] = '\0';
:     cnt1=0;
:     cnt2=0;
:
:     //입력받은 글자수 카운트
:     for (i=0;i<=15;i++)
:     {
:         if (inp1[i] == '\0')
:         {
:             cnt1 = i+1;
:             break;
:         }
:     }
:    
:     for (i=0;i<=15;i++)
:     {
:         if (inp2[i] == '\0')
:         {
:             cnt2 = i;
:             break;
:         }
:     }
:    
:     outp[30] = funchar(inp1,inp2,cnt1,cnt2);
:    
:     //결과물 출력
:     printf("4번째에 끼워진 문장은 다음과 같다:");
:     for (i=0;i<=30;i++)
:     {
:         printf("%c",outp[i]);
:     }
:     printf("\n");
:     printf("%s",outp);
: }
:
: char funchar(char a[15], char b[15], int c, int d)
: {
:     static char out[30];
:     int i;
:
:     //4글자 까지 변수에 넣기
:     for (i=0;i<4;i++){
:         out[i] = a[i]; }
:    
:     //4글자 이후 문장 넣기
:     for (i=0;i<d;i++){
:         out[(i+4)] = b[i]; }
:
:     //남은 문장 넣기
:     for (i=4;i<c;i++){
:         out[(i+d)] = a[i]; }
:    
:     //문장완성 이후 문장 종료 삽입
:     out[c+d] = '\0';
:    
:     return out[30];
:
: }

+ -

관련 글 리스트
6001 문제에 대해서 급질문.. 왕초보연습생 2326 2007/05/11
6013     Re:문제에 대해서 급질문.. 태즈 2115 2007/05/30
6005     Re:문제에 대해서 급질문.. 김종욱 2185 2007/05/15
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.