|
정구일님 ..
문자와 문자열의 개념을 혼동 하시는건 아닌가 모르겠습니다.
질문 내용을 읽다보면 자꾸 뭔가 이상하다는 느낌이 듭니다.
C언어에서 문자와 문자열은 너무나 많은 차이가 있기 때문에 질문 올리실때도
잘 구분하셔야합니다.
문자열을 입력 받는데 2차원 배열은 왜 쓰시나요?
왜 2차원 배열을 써야 할것 같죠? 2차원 배열을 쓰신다면 왜 써야 하는지 확실히 알고 쓰셔야합니다.
문자 비교한다고 하시면서 왜 문자열을 비교하는 strcmp 함수를 쓰시나요?
배열의 개념, 포인터의 개념, scanf의 사용법 등등 기본적인것을 좀더 숙지하시는 방향으로
공부를 하시기 바랍니다.
정구일 님이 쓰신 글 :
: 안녕하세요.
: 다름이 아니라 C를 하다가 질문이 생겨서 이렇게 질문을 올립니다.
: 질문은 : 2차원 배열을 통해서 문자열을 입력 받습니다. 2개
: 그 입력 받은 2개의 문자를 비교 해서 같은 것만 출력 하는 것입니다.
: 문자열을 비교 하려면 2차원 배열을 사용 해야 될거 같아서 2차원 배열을 이용했는데...
: 뭐가 잘 못 된거 같습니다.
: 지적 부탁드립니다.
: 소스코드 첨부
: int i = 0;
: int j = 0;
: char word_a[10][10];
: char word_b[10][10];
: printf("input : ");
: scanf("%s", word_a);
: printf("input : ");
: scanf("%s", word_b);
: for(i = 0; word_a[i] < 6; i++) // word_a 를 비교 하기 위한 for문
: {
: for(j = i; j < word_b[j]; j++) // word_b를 비교 하기 위한 for문
: {
: if(!strcmp(word_a[i], word_b[j])) // strcmp 함수를 이용 해서 두 문자를 비교
: {
: printf("%s", word_a[i]); // 비교후 같은 문자만 출력
: break;
: }}}}
|