IT/개발관련 담기+
[샘플]주민번호검증 C소스
Imtraveller
2013. 9. 10. 15:21
반응형
BOOL IsJuMinNo(char *pJuminData)
{
int i = 0;
int nJumin[12] = {0};
int CheckData[] = { 2, 3, 4, 5, 6, 7, 8, 9, 2, 3, 4, 5};
int nLen = strlen(pJuminData);
for(i=0; i < 13; i++)
{
nJumin[i] = pJuminData[i] - '0';
//DBGLOG(L"%d", nJumin[i]);
}
// Check Sum 코드의 유효성 검사
int nSum = 0;
for (i = 0; i < 12; i++)
nSum += (nJumin[i] * CheckData[i]);
int nChkNo = (11 - (nSum % 11)) % 10;
//DBGLOG(L"nChkNo [%d==%d]", nChkNo, nJumin[12]);
if(nChkNo == nJumin[12])
return TRUE;
return FALSE;
}
개선사항 : 루프를 하나로 만든다면 성능 향상될듯...
반응형