일상일지

[C# 공부] 9. 배열, 함수 본문

개발/C# 공부

[C# 공부] 9. 배열, 함수

서호Seoho 2020. 11. 2. 23:09
반응형

 - 컬렉션 : 이름 하나로 데이터 여러 개를 담을 수 있는 그릇. 배열, 리스트, 사전 등이 있음.

 - 배열 : 이름 하나로 데이터 여러 개를 저장하는 데이터 구조. 데이터 형식 이름 뒤에 [] 기호를 사용하여 선언함.

 - int [] numbers;

 - numbers = new int[3]; >> new 연산자를 사용햐여 배열 크기만큼 메모리 영억을 잡을 수 있음.

 - 데이터형식[] 배열이름 = new 데이터형식[크기];

 

 - 1차원 배열

ushort[] numbers;
numbers = new ushort[2];

numbers[0] = 3840;
numbers[1] = 2160;

 - 배열 선언과 동시에 초기화하기

int[] intArray = new int[3] {1,2,3};
string[] languages = {"Korean","English","Spanish"};

 - 배열을 사용하여 국어 점수의 총점과 평균 구하기

int[] kor = new int[3];
int sum = 0;
float avg = 0;

kor[0] = 100;
kor[1] = 90;
kor[2] = 80;

sum = kor[0] + kor[1] + kor[2];
avg = sum / (float)3.0;

 - foreach문으로 반복해서 출력하기

float[] arr = {10.5f, 20.1f, 30.2f};
float sum = 0.0f;

foreach(float f in arr)
{
	sum += f;
}

 

 - 빈 배열 : 빈 배열의 크기는 항상 0.

 

 - 다차원 배열 : 2차원, 3차원 등 차원이 2이상인 배열을 다차원 배열이라고 함.

 - 데이터형식[,] 배열이름;

char[,] arr = new char[2,2];

arr[0,0] = 'A';
arr[0,1] = 'B';
arr[1,0] = 'C';
arr[1,1] = 'D';

 - 2차원 배열 선언과 동시에 초기화하기

int[,] intArray = new int[2,3] {{1,2,3},{4,5,6}};

 - 2차원 배열은 이중 for문을 사용하여 출력해야 한다.

int[,] arr = {{1,2,3},{4,5,6}};
for(int i=0; i<2; i++){
	for(int j=0; j<3; j++){
    	Console.WriteLine($"arr[{i},{j}] = {arr[i,j]});
    }
}

 

 - 가변배열 : 배열 길이가 가변 길이인 배열은 가변 배열이라고 한다. 지그재그 형태의 배열.

 - 데이터형식[][] 배열이름;

int[][] zagArray = new int[2][];

 

 

 - 함수란 어떤 값을 받아서 그 값을 가지고 가공을 거쳐 어떤 결괏값을 반환시켜주는 코드

 - 함수는 프로그램 코드 내에서 특정한 기능을 처리하는 독립적인 하나의 단위 또는 모듈을 가리킨다.

 - 입력 >> 처리 >> 출력

static void 함수이름(){
	함수내용
}

 

 - 매개변수 : 함수에 어떤 정보를 넘겨주는 데이터. 콤마를 기준으로 여러 개 설정할 수 있다.

static void ShowMessage(string message){
	Console.WriteLine(message);
}

static void Main(){
	ShowMessage("메시지");
}

 

 - 반환값 : 함수에서 어떤 처리를 한 후, 그 결과를 다시 함수를 호출한 부분으로 되돌려 주는 것

static string GetString(){
	return "반환값(Return Value)";
}

 

반응형

'개발 > C# 공부' 카테고리의 다른 글

[C# 공부] 10. 함수  (0) 2020.11.12
[C# 공부] 8. 반복문  (0) 2020.10.25
[C# 공부] 7. if 문  (0) 2020.10.10
[C# 공부] 6. 제어문  (0) 2020.09.27
[C# 공부] 5. 연산자  (0) 2020.09.19
Comments