C프로그래밍/개인 공부

C프로그래밍/개인 공부

C언어 - 쉽게 풀어쓴 C언어 express 10장 배열 실습문제(짝수번)

2번 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 33 34 35 36 37 38 39 40 41 42 43 44 45 46 #include #include #include int main(void) { srand((unsigned)time(NULL)); int i[10] = {0}; int j; int k; int t; int temp; int least; for(j = 0; j

C프로그래밍/개인 공부

C언어 - 정렬

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 #include #define SIZE 10 int main(void) { int list[SIZE] = {3, 4, 6, 5, 7, 8, 9, 1, 0, 2}; int i, j, temp, least; for(i = 0; i

C프로그래밍/개인 공부

C언어 - 배열과 함수

기본적으로 함수 호출 시에 "값에 의한 호출(call by value)"이 이루어진다. "값에 의한 호출"이란 함수 호출할 때, 인수의 값이 매개변수로 전달하면서 원본이 전달되는 것이 아니라 복사본이 전달된다. 하지만 배열의 경우에는 함수 호출 시에 인수가 배열이라면 "값에 의한 호출"이 아니라 "참조에 의한 호출(call by reference)"을 한다. 이는 복사본이 전달되는것이 아니라, 원본이 전달된다고 알아두면 된다.(자세한 내용은 포인터를 학습해야 한다) 요약 : 기본적으로 값에 의한 호출, 인수가 배열이면 참조에 의한 호출 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 #include #define STUDEN..

C프로그래밍/개인 공부

C언어 - 배열의 복사, 비교

배열의 복사 1 2 3 4 5 6 7 8 9 10 11 12 13 #include #define SIZE 5 int main(void) { int a[SZIE] = {1, 2, 3, 4, 5}; int b[SZIE]; b = a; //복사 이렇게 하면 안됨. return 0; } Colored by Color Scripter cs 이렇게 하면 배열이 복사되지 않는다. 배열의 이름은 배열이 있는 '주소'이기 때문이다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 #include #define SIZE 5 int main(void) { int a[SIZE] = {1, 2, 3, 4, 5}; int b[SIZE]; int i; for(i=0; i

C프로그래밍/개인 공부

C언어 - 배열요소의 개수 계산(sizeof)

배열 요소의 개수 계산 방법 sizeof 연산자 : 자료형이나 변수의 크기를 바이트 단위로 계산 sizeof 연산자로 배열 전체의 크기를 구하고 이것을 배열 원소의 크기로 나누게 되묜 배열 원소가 몇개있는지 계산 가능 1 2 3 4 5 6 7 8 9 10 11 12 #include int main(void) { int nums[] = {3, 5, 6, 8, 3, 2}; printf("%d", sizeof(nums)); return 0; } >>>24 Colored by Color Scripter cs nums라는 배열을 선언하고 초기화 한다.(원소가 6개 있으므로 배열을 6칸으로 자동으로 잡아줌) int형으로 배열을 선언했기 때문에 6칸x4바이트 = 총 24바이트 why? sizeof연산자는 바이트 단위..

C프로그래밍/개인 공부

C언어 - 포인터1, 선언과 초기화

컴퓨터는 데이터를 '메모리'라는 물리적인 장치에 쓰고 읽고 지운다. 다른 언어와 차별화를 시키는 '포인터'라는 개념은 C를 더 특별하게 만든다. 바로 '직접 접근'이 가능하기 때문이다. 다시 말해, 더 기계친화적인 프로그램을 만들 수 있다. 포인터란? 메모리에 있는 데이터의 주소를 가지는 일종의 변수이다. '주소'에 주목을 하자. 데이터를 가지는게 아니라 데이터가 들어가있는 메모리의 주소를 가진다. pointer를 한글로 번역해보면 '가르키는 것'이다. 즉, 변수의 주소를 가르킨다고 볼 수 있다. 포인터를 사용하는 이유? 데이터의 복사를 피하고 데이터를 공유하여 작업할때 필요하다. 데이터의 복사본을 가지고 노는게 아니라 데이터의 원본을 다룰 수 있다. 직접 접근하기 때문이다. 쉽게 설명하자면 예를 들어,..

Jminu
'C프로그래밍/개인 공부' 카테고리의 글 목록 (4 Page)