c·c++/c 프로그래밍

중복된 단어 지우기

바로이순간 2012. 6. 14. 09:12

#include <stdio.h>

#include <string.h>

int main() {

    char buf[100];

    char *p;

    char *a[10];

    char *b[10];

    char *c[10];

    int i, j, n1, n2;


    printf("A 입력 : ");

    gets(buf);

    p = strtok(buf, ", ");

    i=0;

    while(p != NULL) {

        a[i++]=strdup(p);

        p = strtok(NULL, ", ");

    }

    n1=i;

    printf("B 입력 : ");

    gets(buf);

    p = strtok(buf, ", ");

    i=0;

    while(p != NULL) {

        b[i++]=strdup(p);

        p = strtok(NULL, ", ");

    }

    n2=i;

    for(i=0;i<n1;++i) { 

        for(j=0;j<n2;++j) 

            if(strcmp(a[i],b[j])==0) break;

        if(j==n2) printf("%s,", a[i]);

    }

    for(i=0;i<n2;++i) { 

        for(j=0;j<n1;++j) 

            if(strcmp(b[i],a[j])==0) break;

        if(j==n1) printf("%s,", b[i]);

   }


    return 0;

}