간단한 "찾아 바꾸기" 기능을 구현하여 보자. 첫 번째로 사용자에게 최대 80 문자의 문자열을 입력하도록 한다. 두 번째로 찾을 문자열을 입력받는다. 세 번째로 바꿀 문자열을 입력받는다. 문자열을 찾아서 바꾼 후에 결과 문자열을 화면에 출력한다.
//개인적으로 최고로 어려웠던 문제네요.. 오래걸렸습니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | #include <stdio.h> #include <string.h> #define SIZE 80 int main(void) { char a[SIZE]=""; char find[15]=""; char change[15]=""; char seps[]=" "; char b[10][20]; char *token; int j,count; count=0; printf("문자열을 입력하세요: "); gets(a); printf("찾을 문자열: "); gets(find); printf("바꿀 문자열: "); gets(change); token=strtok(a,seps); while(token!=NULL) { strcpy(b[count],token); count++; token=strtok(NULL,seps); } for(j=0;j<count;j++) { if(strcmp(b[j],find)==0) {strcpy(b[j],change); break;} } printf("결과: "); for(j=0;j<count;j++) { printf("%s ",b[j]); } printf("\n"); return 0; } | cs |
참고로 제 코드 말고도 인터넷에 찾아보니 좋은 코드가 있어서 공유하고자 합니다.
'컴퓨터 & 프로그래밍 & 전자공학 > C언어' 카테고리의 다른 글
포인터 평면 위의 점 (0) | 2016.12.27 |
---|---|
좌표 일치 확인 (0) | 2016.12.27 |
전광판 만들기 (0) | 2016.08.22 |
문자열로 연산하기 (0) | 2016.08.22 |
구두점 개수 세기 (0) | 2016.08.21 |