본문 바로가기
공부/전산학(컴공)

C프로그래밍 공부일기

by 박워너비 2020. 6. 10.

[2020년 6월]

01

<공부한 내용>

-프로그래밍 개념

- 프로그램 작성과정

-C프로그램 구성요소

-변수와 자료형

-수식과 연산자

-조건문

-반복문

-함수

-함수와 변수

- 배열

 

02

<개념보충이 필요한 내용>

- 자료형

- 논리연산과 비트연산

- 함수

 

<좀 더 연습해보고싶은 내용>

- 반복문과 조건문

 

03

C프로그래밍 개념 사전

 

08 사용자 정의 함수 

Why? 특정 기능을 따로 떼서 저장해두고 필요할 때마다 불러와서 쓰려고.

// 이때까지 써왔던 printf(),scans_f()같은 기능들도 이와 같은 목적을 가지고 있으며,

   C언어에서 자체적으로 제작해서 제공하는 라이브러리 함수다.

How?

 

1. 정의하는 방법

반환형 함수이름(자료형 입력값) // 반환형은 함수에서 다루는 입출력값이 어떤 수인지(정수,실수,복소수)에

                                              따른 자료형을 써주거나 입력값이 없는 함수라면 void를 써준다.

{

   함수 처리내용(어떤 데이터를 입력 받아서 어떤 식으로 계산하고, 어떤식으로 출력할 것인가);

   return 출력값; // void의 경우 출력값이 없는 함수이므로 void 함수()에서는 return을 쓰지않는다.

}

 

//수학 시간에 배운 함수가 y=f(x) 꼴인 것을 생각하면 이해하기 한결 쉽다. 

 

// return 뒤에 붙는 출력값은 f(x)를 계산한 끝에 나온 출력 값으로 f(x), y의 값이다.

 

//다른 함수에서 입력받은 값을 지금 이 함수안에 쓰기 위해서는 두 함수를 이어주는

   매개변수가 f(x)의 x에 자리에 들어가야하고 값을 연결시키는 것이 아니라면 매개변수 없이 ( )안을 비워도 된다.

2. 호출하는 방법

void ps() // 사용자정의함수 만들기

{

   for (int i = 0; i<30; i++)

      printf("*");

}

 

int main()

{

   ps(); //원하는 곳에 쓰려는 기능을 호출하기

   printf("사랑합니다 \n");

   ps(); //원하는 곳에 쓰려는 기능을 호출하기

   return 0;

 

3. 사용자 정의 함수의 출력값을 다른 함수에서 사용하는 방법

int sum_one_to_x(int n) // 괄호 안에서 정의하는 입력값은 밑의 n과 통일하지 않아도 된다.

                                  입력 받은 값을 이 함수에서는 이 이름으로 부르겠다는 뜻이다.

                                  int inteager 로 적었다면 밑의 메인 함수에서 입력받은 n값을

                                  이 함수 안에서는

                                  inteager라고 부르겠다는 뜻이다. 4

{

  int i=1,sum=0;

  for(i;i<=n;i++) // 만약 1~4과정처럼 하지않고 그냥 여기서 int input_inteager()를 호출했다면?

                         함수를 두번 호출했으니(메인에서 한번, 여기서 한번) 입력을 두번 받게된다. 5

  sum+=i;

  return sum;

}

int input_inteager()

{

  int num;

  printf("좋아하는 정수를 입력하세요: ");

  scanf_s("%d\n",&num);

  return num; // intput_inteager() = num 이라는 뜻이다. 1

}

int main(void)

{

   int n,total;

   n = input_inteager(); // 따라서 n=input_inteager()=num 이라는 뜻이다. 2

   total = sum_one_to_x(n); // num을 sum_one_to_x() 함수의 입력값으로 한다는 뜻이다. 3

   printf("1부터 %d까지의 합은 %d입니다.", n,total);

   return 0;

}

 


비슷한 글 더 찾아보기

 

전산학 글찾기

전산학 서랍에 있는 글을 찾기쉽게 모아둔 문서입니다. 1. 컴퓨터 원리 2. 소프트웨어 작성  2-1 프로그램 언어 -> C프로그래밍 공부일기  2-2 웹 프로그래밍  -> 웹 프로그래밍 1화 웹프로그래밍 1�

bakwannabe.tistory.com


글쓴이의 다른 페이지

 

경험과 생각 : 네이버 블로그

두근거림,자유로움,다 함께

blog.naver.com