반말을 존댓말로
글쓴이: 익명 사용자 / 작성시간: 월, 2011/02/21 - 9:30오전
#include <stdio.h>
#include <wchar.h>
#include <locale.h>
int findatrear(wchar_t [], wchar_t []);
void replace(wchar_t [], wchar_t []);
int getline(wchar_t [], int);
main(){
wchar_t mainstr[1000];
setlocale(LC_CTYPE,"kor");
while (getline(mainstr, 1000) > 0)
{
if (findatrear(mainstr, L"이다\n"))
replace(mainstr, L"입니다\n");
else if (findatrear(mainstr, L"한다\n"))
replace(mainstr, L"합니다\n");
else if (findatrear(mainstr, L"된다\n"))
replace(mainstr, L"됩니다\n");
wprintf(L"%s", mainstr);
}
}
int findatrear(wchar_t str[], wchar_t strtofind[])
{
int i = wcslen(str);
if (wcscmp(&str[i-3], strtofind) == 0)
return 1;
return 0;
}
void replace(wchar_t str[], wchar_t strtoreplace[])
{
int i = wcslen(str);
str[i-3] = L'\0';
wcscat(str, strtoreplace);
}
int getline(wchar_t str[], int max)
{
if (fgetws(str,max,stdin) == NULL)
return 0;
else
return wcslen(str);
}반말을 존댓말로 만드는 프로그램을 추진중인데 위의 프로그램은 (입니다 | 합니다 | 됩니다)
밖에 할줄 모릅니다. 국어문법이나 그런 책에 반말을 존댓말로 하는 법에 관한 책이 있나 묻고 싶습니다.
Forums:

형태소 분석기 소스가 공개되어 있습니다. 일단
형태소 분석기 소스가 공개되어 있습니다.
일단 형태소 분석기로 동사를 추출해서 변환해야될 듯.
강승식 교수님의 책도 있죠.
재벌 2세가 재벌이 될 확률과
금메달리스트 2세가 금메달을 딸 확률이 비슷해지도록
자유오픈소스 대안화폐를 씁시다.
아이디의 아이디어 무한도전
http://blog.aaidee.com
귀태닷컴
http://www.gwitae.com
댓글 달기