본문 바로가기

Programing(프로그래밍)

C# 입력받은 스트링을 뒤집어보자


이번엔 코드보다 일단 설명


뭔가(문자열로) 입력을 받고 그걸 뒤집는걸 구현해보자는게 이번 취지.

밴쿠버 불꽃놀이를 5시에 가서(....) 10시까지 기다리기 지루해서 

아이패드 앱으로 코딩했다가 집에와서 다시 코딩.


7번 줄에 보면,

나는 ReverseStr()클래스가 char[]행렬을 받는다.

나는 string형을 받아서 함수 내에서 string을 char[]행렬로 바꾸는게 더 깔끔하다고 생각했는데

포프님 생각은 완전 반대. 왜 굳이 함수에서 바꿔서 메모리를 더 잡아먹게 하느냐는것.

(별 차이 없는거 같은데 엉엉 ㅠㅠ)

그래서  Main() 함수에서 받자마자 바로 변환시킨후에 함수로 넘겨줬다.


사실 이게 버전 2.5쯤 되는데, 처음 1.0버전은 입력받은걸 거꾸로 출력만(...)하는게 목적이었는데

출력보단 아예 스트링을 뒤집는게 더 좋을꺼라고(반협박) 하셔서 고쳤다.

2.0버전은 ReverseStr()클래스가 string형을 받는것, 그리고 아래 코드가 최종본이다.


20번 줄에서 입력받은 string 

21번 줄에서 char[]행렬로 바꿔주고

22번 줄에서 ReverseStr()함수호출

그리고 24번부터 출력 순이다.


-----------------------

 

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
using System;
 
namespace ReverseString
{
    class Program
    {
        static void ReverseStr(char[] str)      
{
            int length = str.Length;
            for (int i = 0; i < length/2;  i++)
            {
                char temp = str[i];
                str[i] = str[length - i - 1];
                str[length - i - 1= temp;
            }
        }
 
        static void Main(string[] args)
        {
            string input = Console.ReadLine();
            char[] str = input.ToCharArray();
            ReverseStr(str);
 
            foreach(char s in str)
            {
                Console.Write(s);
            }
            Console.WriteLine();
        }
    }
}
 
cs

-------------------------