퀴즈 질문 | 
                
                    
                 | 
            
            
                | 
                     
                        
                        
   
                     
                 | 
            
            
                 예상답변/설명 | 
                                
                		
					
C# 에서 문자열을 숫자로 변경하기 위해서는 보통 int.Parse()를 사용한다. 하지만, 이 문제는 자신의 함수를 작성할 것을 요청했으므로, 문자열을 파라미터로 받아들여 정수를 리턴하는 함수를 아래와 같이 작성할 수 있다. 
 
int StrToInt(string s)
{
    if (string.IsNullOrEmpty(s)) return 0;            
    int i = 0, num = 0;
    int sign = 1;
    char[] a = s.ToCharArray();
    if (a[i] == '-')
    {
        i++;
        sign = -1;
    }
    while (i < a.Length)
    {
        num *= 10;
        num += a[i] - '0';
        i++;
    }
    return num * sign;
}
기본적으로 우선 - 사인 처리를 하고, 해당 문자열을 문자 배열로 변경한 후, 각 문자를 숫자로 변경하면서 10배 처리를 진행(10진수이므로)한다. 숫자 변환이 끝나면 사인을 처리해 준다. 참고로, 문자 배열로 변경하지 않고 string의 Substring()을 사용하거나 String 인덱서를 사용할 수도 있다.
 
                 
                 |