이번 강의에서는 C 언어의 핵심 요소 중 하나인 함수에 대해 배워보겠습니다.
이미 우리는 이전 글에서 변수, 자료형, 연산자, 조건문과 반복문에 대해 학습했으며,
이러한 지식을 바탕으로 더 체계적이고 효율적인 프로그램을 작성하는 방법을 배울 것입니다.
C 프로그래밍 언어 독학 시리즈의 전편을 아직 보지 못하신 분들은 아래 링크를 참고해 주세요!
C 언어 독학 #1 (기초, 쉬운 설명, Hello world)
C 언어 독학 시리즈 #2 (변수, 자료형, 연산자, 기본 입출력, 실습예제)
C언어 독학 완전 기초부터 마스터까지 #3 (조건문과 반복문, 조건문과 반복문을 이용한 실습 예제)
1. 함수란 무엇인가?
프로그래밍에서 함수는 특정 작업을 수행하는 코드 블록입니다. 함수는 코드를 재사용 가능하게 하고, 가독성을 높이며, 프로그램의 구조를 더 체계적으로 만듭니다.
C 언어에서 함수는 **입력(매개변수)**을 받아 **출력(반환값)**을 생성하며, 필요한 경우 아무 입력도 받지 않거나 아무 것도 반환하지 않을 수도 있습니다.
함수의 기본 구조
반환형 함수이름(매개변수) {
// 실행될 코드
return 반환값;
}
2. 기본 함수 사용해보기
C 언어에는 printf, scanf 같은 표준 라이브러리 함수가 있지만, 사용자 정의 함수를 직접 만들어 사용할 수도 있습니다.
예제: 간단한 덧셈 함수
#include <stdio.h>
// 함수 정의
int add(int a, int b) {
return a + b; // 두 숫자의 합 반환
}
int main() {
int x = 5, y = 10;
int result = add(x, y); // 함수 호출
printf("결과: %d\n", result);
return 0;
}
실행 결과
결과: 15
3. 함수의 구성 요소
- 반환형(Return Type)
함수가 반환하는 값의 데이터 타입입니다. 예를 들어, int, void, float 등이 있습니다.- int: 정수 반환
- void: 반환값이 없음
- 함수 이름(Function Name)
함수의 이름은 코드에서 호출될 때 사용됩니다. 변수 이름처럼 의미 있는 이름을 붙이는 것이 좋습니다. - 매개변수(Parameter)
함수가 입력으로 받을 데이터입니다. 여러 개의 매개변수를 쉼표(,)로 구분할 수 있습니다. - 함수 본문(Body)
함수가 실행하는 코드 블록입니다. - 반환값(Return Value)
함수가 작업을 끝내고 호출한 곳으로 돌려주는 값입니다. 반환값이 없을 경우 void를 사용합니다.
4. 함수의 종류
1. 반환값이 있고, 매개변수가 있는 함수
int multiply(int a, int b) {
return a * b;
}
2. 반환값이 없고, 매개변수가 있는 함수
void printMessage(char message[]) {
printf("%s\n", message);
}
3. 반환값이 있고, 매개변수가 없는 함수
int getRandomNumber() {
return 42; // 임의의 숫자 반환
}
4. 반환값도 없고, 매개변수도 없는 함수
void greet() {
printf("Hello, World!\n");
}
5. 함수 사용 시 주의사항
- 함수 이름은 고유해야 합니다.
- 매개변수와 반환값의 타입을 정확히 정의해야 합니다.
- main 함수는 항상 프로그램의 시작점이며, 반드시 포함되어야 합니다.
6. 실습: 구구단 출력 함수 만들기
문제
사용자 정의 함수를 사용하여 입력받은 숫자의 구구단을 출력하세요.
코드
#include <stdio.h>
// 구구단 출력 함수
void printMultiplicationTable(int n) {
for (int i = 1; i <= 9; i++) {
printf("%d x %d = %d\n", n, i, n * i);
}
}
int main() {
int number;
printf("구구단을 출력할 숫자를 입력하세요: ");
scanf("%d", &number);
printMultiplicationTable(number); // 함수 호출
return 0;
}
실행 결과
구구단을 출력할 숫자를 입력하세요: 7
7 x 1 = 7
7 x 2 = 14
7 x 3 = 21
...
7 x 9 = 63
이번 강의에서는 C 언어에서 함수를 정의하고 사용하는 방법을 배웠습니다.
다음 강의에서는 **배열(Array)**과 함수의 연계를 통해 더욱 복잡한 프로그램을 작성해 보겠습니다.
지금까지 배운 내용을 활용하여 간단한 프로그램을 작성해 보세요! 독학의 핵심은 직접 실행해 보는 것입니다. 😊
궁금하신 사항은 댓글에 남겨주세요
댓글에 남겨주신 내용은
추후 정리해서 올려드리겠습니다
구독 신청하시면 업로드 시 알려드릴게요!
-
조금이라도 도움이 되셨다면
공감&댓글 부탁드리겠습니다
감사합니다!
'개발 > C언어' 카테고리의 다른 글
C 언어로 숫자 맞추기 게임 개발하기: 단계별 가이드 (1) | 2024.12.03 |
---|---|
C언어 독학 완전 기초부터 마스터까지 #3 (조건문과 반복문, 조건문과 반복문을 이용한 실습 예제) (0) | 2024.04.30 |
C언어 독학 완전 기초부터 마스터까지 #2 (변수, 자료형, 연산자, 기본 입출력, 실습 예제) (1) | 2024.04.02 |
C언어 독학 완전 기초부터 마스터까지 #1 (기초, 쉬운 설명, Hello world) (1) | 2023.12.19 |