c언어

1. 순환 - 순환이란 어떤 알고리즘이나 함수가 자기 자신을 호출하여 문제를 해결하는 프로그램이다. 1. 순환의 예 ex) 팩토리얼 계산 🟡 코드 int factorial(int n) { if(n
· Major/C&C++
1. 동적 메모리 할당 - 일반적인 배열은 크기가 고정되어있다. - 이러한 고정된 크기 때문에 배열이 남을 수도, 부족할 수도 있다. - 일반적인 배열의 단점을 보완한 것이 '동적 메모리 할당' 이다. 1) 의미 : 메모리를 운영체제로부터 할당받아서 사용하고, 사용이 끝나면 반납하는 기능 - 동적 메모리가 할당되는 공간을 히프(heap)라고 한다. * 히프는 운영체제가 사용되지 않는 메모리 공간을 모아놓은 곳이다. 2) 선언 방법 int *p; p = (int *)malloc(sizeof(int)); //동적 메모리 할당 *p = 1000; //동적 메모리 사용 free(p); //동적 메모리 반납 - malloc() 함수는 size 바이트 만큼 메모리 블록을 할당한다. 따라서 sizeof(int) = ..
· Major/C&C++
- 외부 변수의 값을 변경할 때 포인터를 매개변수로 사용하면 편리하다 - 그 예로 외부변수 2개의 값을 서로 바꾸는 swap() 함수를 구현하는 방법이 있다. void swap(int *px *py) { int tmp; tmp = *px; *px = *py; *py = tmp; } int main(){ int x = 3; int y = 6; printf("swap 전 : %d, %d" x, y); swap(&x, &y); //변수의 주소를 집어넣는다. printf("swap 후 : %d, %d" x, y); return 0; }
· Major/C&C++
#C언어로 쉽게 풀어 쓴 자료구조 책을 기반으로 작성하였습니다. 1. 구조체 - 배열이 타입이 같은 데이터의 모임이라면, 구조체는 타입이 다른 데이터를 묶는 방법이다. 1) 구조체 형식 struct 구조체이름 { 항목1; 항목2; ... }; 구조체의 형식이 위와 같이 정의 되었다면 구조체 변수는 다음과 같이 생성한다. struct 구조체이름 구조체변수; 간단한 예시로 구조체를 만들어보면, struct student { char name[10]; int age; double gpa; }; 위의 문장은 구조체의 형식만 정의한 것이고 실제로 구조체를 만들려면 아래와 같이 선언해야 한다. struct student s; 구조체 안에 들어 있는 멤버를 사용하는 방법은 아래와 같다. s.age = 20; s.gp..
· Major/C&C++
1. 문자와 문자열 - 문자와 문자열은 다른 개념입니다. - 문자는 단일 문자를 이야기하며, 문자열은 둘 이상의 결합문자를 이야기 합니다. 2. 문자 입력받기 - C언어에서 문자를 입력받기 위해서는 char 자료형을 이용해야 합니다. - 서식문자로 %c를 사용합니다. 예시 ) 문자 한개만 입력받기 int main() { char c1; printf("문자를 입력하세요: "); scanf("%c", &c1); // 문자를 입력받아서 변수에 저장 printf("%c\n", c1); // 변수의 내용을 출력 return 0; } 예시) scanf 하나로 문자 여러개를 입력받기 - 정수나 실수를 입력 받듯이 %c를 붙여서 입력받으면 c2값은 들어가지 않습니다. 왜냐하면 엔터키나 스페이스도 하나의 문자로 치기 때..
BeNI
'c언어' 태그의 글 목록