문자열을 strstr함수를 사용해서 찾는 문자열과 바꿀문자열을 입력받아서 교환해서 출력하는문제.
솔길
문자열을 입력받아서 찾을 문자열과 바꿀문자열을 변경하는 프로그램을 만드는건데요
예)
My Name is Kim
찾는단어 kim
바꿀단어 park
이면
출력했을때
My Name is Park가 되도록하는건데
자꾸 에러나네요 ㅠ
도와주세요
main()
{
int i;
char a[]=My Name is Kim.;
char b[10],c[10],d[10];
char *s;puts(a);
printf(\n찾을 문자열과 바꿀문자열을 차례대로 입력 하세요. :\n);
scanf(%s %s,&b,&c);
s=strstr(a,b);
for(;*s!=0;s++)
*s=c;printf(%s\n,a);
}
-
한말글
main()
{
\tchar a[30]=\My Name is Kim.\;
\tchar b[30],c[30];
\tchar *s,*p;
\tint i,j,l,k=0;
\tfor(j=0;j30;j++){
\t\t\tif(a[j]==0)
\t\t\t\tk++;}
//\tprintf(\%d\\n\ -
찬솔큰
s가 참조하는 값이 strstr(a,b)에서 찾은 문자열 주소값을 가지고 있기때문에
그 주소가 참조하는값에 c(바꿀문자열)값을 넣어주려고하는데 안될까요?? -
영빈이
*s=c;는 말도 안되는 구문입니다
strcpy(s,c); 그리고 찾는 문자열과 바꿀 문자열의 길이가 같아야한다는 것 아니면 이상하게 출력 되던가
아니면 마지막 부분에(Kim) 문자열을 바꿀때 길이가 길면 나중에 메모리 오류가 날것으로 생각 됩니다