swap메소드(5)
-
배열을 이용한 내림차순 정렬 알고리즘
ex) 배열을 이용한 내림차순 정렬 알고리즘 static void Main(string[] args) { Console.WriteLine("오름차순 정렬 프로그램"); int[] arr = { 5, 7, 1, 4, 8, 9, 10, 2, 3, 6 }; int first_num = 0, second_num = 0; for (first_num = 0; first_num < arr.Length; first_num++) { for (second_num = 0; second_num < arr.Length; second_num++) { if(arr[first_num] arr 변수명을 가지고 크기가 10인 정수형 배열을 선언 후 값을 지정하여 초기화하였습니다. 2. int first_num = 0, second_nu..
2016.12.20 -
배열을 이용한 오름차순 정렬 알고리즘
ex) 배열을 이용한 오름차순 정렬 알고리즘 static void Main(string[] args) { Console.WriteLine("오름차순 정렬 프로그램"); int[] arr = { 5, 7, 1, 4, 8, 9, 10, 2, 3, 6 }; int first_num = 0, second_num = 0; for (first_num = 0; first_num arr[second_num]) { Console.Write("\n기준 : arr[{0}]\t비교 : arr[{1}]\n", first_num, sec..
2016.12.15 -
params
1. params 접근지정자 반환형 메소드명(params 자료형[] 배열이름) { 메소드 실행문 } -> 일반적으로 메소드를 선언하고 인자를 선언할 때 인자의 수를 정하고 선언하게 됩니다. 만약 선언한 메소드의 인자의 수보다 전달할 매개변수의 수가 많다고 가정한다면 메소드가 제대로 실행되지 않을 것입니다. -> params는 가변적인 배열을 선언하여 매개변수를 저장하기 때문에 다수의 매개변수를 전달받을 수 있게 되는 것입니다. static void Main(string[] args) { Console.WriteLine("모든 수의 곱 = {0}", Multi(1, 2, 3, 4, 5, 6, 7, 8, 9)); } static int Multi(params int[] multi_Arr) { int mult..
2016.12.12 -
메소드를 이용한 Swap메소드 ( Call By Reference )
1. Call By Reference ( 참조에의한 호출 ) swap(ref num1, ref num2); static void swap(ref int num1, ref int num2) { int num_swap = num1; num1 = num2; num2 = num_swap; } -> Call By Reference는 변수의 주소값을 메소드로 전달하기 때문에 메소드에서 스왑을 하게되면 메인문의 변수가 저장되어있는 주소의 값을 변경하게 되는 것입니다. 따라서, 매개변수를 스왑을 하게 되면 메인문의 변수의 값도 스왑이 일어나게 됩니다. -> 메소드를 선언할 때와 호출할 때 ref 키워드를 꼭 작성해주어야 합니다.
2016.12.12 -
메소드를 이용한 Swap메소드 ( Call By Value )
1. Call By Value 메소드명(매개변수1, 매개변수2); -> 메소드로 데이터를 넘겨줄 때 Call By Value는 변수의 값만 넘겨주는 역할을 합니다. 따라서, 메인문에서 int 형으로 선언된 num1, num2와 메소드로 넘겨준 매개변수는 별개로 작용하게 되는 것입니다. ex)에서처럼 코드를 작성하게 되면 메인문의 변수 num1과 num2의 값이 변경된 것이아니라 메소드로 전달한 매개변수의 값을 스왑하고 출력은 매개변수가 아닌 num1과 num2를 출력하게 됩니다. 따라서, 메인문의 변수는 스왑은 일어나지 않게 되는 것입니다. ex) static void Main(string[] args) { int num1 = 0, num2 = 0; Console.WriteLine("첫번째 숫자를 입력하..
2016.12.12