본문으로 바로가기

C :: 문자열 패턴찾는 프로그램

category Programing/C 2017. 4. 15. 19:15

문자열을 입력받고 그중 패턴을 찾아 표시하는 프로그램을 만드는 과제이다.


내가 작성한 코드는 아래와 같다.



#include <stdio.h>


int main()

{

int i,j,line,len;

char **arr,*result;

printf("문자열의 개수 : ");

scanf("%d",&line);


printf("문자열의 길이 : ");

scanf("%d",&len);


if(line>5000||len>5000){

printf("범위 초과\n"); return 0;

}


arr = (char**)malloc(sizeof(char*)*line);

for(i=0;i<line;i++)

arr[i] = (char*)malloc(sizeof(char)*len);

result = (char*)malloc(sizeof(char)*len);


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

scanf("%s",arr[i]);

}


for(i=0;i<len;i++)

for(j=1;j<line;j++){

if(arr[j][i]!=arr[j-1][i]){

result[i]='?';

break;

}

else

result[i]=arr[j][i];

}

printf("패턴 : %s\n",result);



for(i=0;i<line;i++)

free(arr[i]);

free(arr);

free(result);



return 0;

}