Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
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
Tags
more
Archives
Today
Total
관리 메뉴

히바리 쿄야 와 함께 하는 Developer Cafe

[1일차] DO IT C 언어 입문 / p 17 ~ p 150 / 표준출력함수, 상수와 변수, 함수 본문

C언어

[1일차] DO IT C 언어 입문 / p 17 ~ p 150 / 표준출력함수, 상수와 변수, 함수

TWICE&GFRIEND 2021. 5. 3. 17:26

C언어 함수 정의

 

int Sum (int s1, int s2)      // int 반환 자료형  ,  sum 함수이름 ,  (x, y) 매개변수 목록 (파라미터) 라고 부름

{
      int result =  s1 + s2;
      return result;  // 반환값 
}


1. 반환 타입(return type) : 함수가 모든 작업을 마치고 반환하는 데이터의 타입을 명시합니다.

2. 함수 이름 : 함수를 호출하기 위한 이름을 명시합니다.

3. 매개변수 목록(parameters) : 함수 호출 시에 전달되는 인수의 값을 저장할 변수들을 명시합니다.

4. 함수 몸체 : 함수의 고유 기능을 수행하는 명령문의 집합입니다.

 

함수의 원형 선언 

반환타입 함수이름(매개변수타입);

 

예제

 

#include <stdio.h>

int Mod(int k1, int k2)

{
       int result = k1 % k2;
       return result;   
}

void main()
{
      int y;
      y = Mod(10, 5);
      printf("나머지 결과값은 %d \n", y);
}

// 나눠 떨어지기 때문에 결과값은 0  나온다.
// 93 페이지 예제를 모드값으로 변경
// Mod 함수는 main 함수보다 앞에서 작성해야 함 
// main 함수에서 Mod 함수를 호출하는 명령을 번역하는 시점에 아직 컴파일러는 Mod 함수를 본적이 없으므로
// 관련된 코드를 구성할 수 없기 때문에 메인 함수 위에 작성해야함

 

문자열 출력 함수 키워드

 

%d : 정수(10 진수) (int)  
%f : 실수 (Float)   
%c : 문자    (Char)
%s : 문자열 (String)

 

연산자

 

 && :  둘다 모두 참이어야 결과 값이 참(True) 1,  하나라도 거짓이면 결과 값은 거짓 0
 | |  :  둘중에 하나라도 참이면 결과 값이 참(True) 1,  둘다 거짓일 경우 결과 값은 거짓 0
  !  :   하나 라도 거짓이면 결과 값이 참 1,  하나가 참이면 결과 값은 거짓 0

 

예제

 

#include <stdio.h>

void main()
{
	int data1 = 5, data2 = 3;   /* 두 변수에 초기값을 5와 3으로 설정 */
	/* 관계 연산 테스트 */
	int result1 = data1 > 7;              /* 5는 7보다 작으므로 거짓 */
	int result2 = data2 <= data1;         /* 3은 5보다 작으므로 참   */
	int result3 = data2 == 7;             /* 3은 7과 같지 않으므로 거짓 */
	int result4 = data2 != data1;          /* 3은 2와 다르므로 참   */
	/* 관계 연산의 결과는 0 또는 1로 나온다 */
	printf("result : %d, %d, %d, %d\n", result1, result2, result3, result4);
}


// 결과 값은 0, 1, 0, 1

 

C언어 연산자 우선순위

 

우선순위

연산자

설명

1

++

후위 증가 연산자

 

--

후위 감소 연산자

 

()

함수 호출

 

[]

첨자 연산자

 

.

참조에 의한 선택

 

->

포인터를 통한 선택

2

!

논리 NOT 연산자

 

~

비트 NOT 연산자

 

+

양의 부호 (단항 연산자)

 

-

음의 부호 (단항 연산자)

 

++

전위 증가 연산자

 

--

전위 감소 연산자

 

(타입)

타입 캐스트 연산자

 

*

참조 연산자 (단항 연산자)

 

&

주소 연산자 (단항 연산자)

 

sizeof

크기

3

*

곱셈 연산자

 

/

나눗셈 연산자

 

%

나머지 연산자

4

+

덧셈 연산자 (이항 연산자)

 

-

뺄셈 연산자 (이항 연산자)

5

<<

비트 왼쪽 시프트 연산자

 

>>

부호 비트를 확장하면서 비트 오른쪽
시프트

6

<

관계 연산자(보다 작은)

 

<=

관계 연산자(보다 작거나 같은)

 

>

관계 연산자(보다 큰)

 

>=

관계 연산자(보다 크거나 같은)

7

==

관계 연산자(와 같은)

 

!=

관계 연산자(와 같지 않은)

8

&

비트 AND 연산자

9

^

비트 XOR 연산자

10

|

비트 OR 연산자

11

&&

논리 AND 연산자

12

||

논리 OR 연산자

13

? :

삼항 조건 연산자

14

=

대입 연산자 및 복합 대입 연산자

(=, +=, -=, *=, /=, %=, <<=, >>=,
&=, ^=, |=)

15

,

쉼표 연산자

 

Comments