C 언어

    반복문 활용

    반복문 활용

    중첩 반복문과 break, continue 제어문 중첩 반복문 중첩 반복문은 반복문 안에 실행할 문장으로 반복문이 포함된 것이다. 중첩 반복문 사용 시 주의점 중첩 반복문에서는 각 반복문이 서로 독립적인 제어 변수를 사용해야 각각 원하는 횟수를 반복할 수 있다 ex) i, j break 분기문 제어문 break는 반복문 안에서 반복을 즉시 끝낼 때 사용한다 continue 분기문 제어문 continue는 반복문의 일부를 건너뛴다 분기문 사용 예

    while문, for문, do ~ while 문

    while문, for문, do ~ while 문

    반복문 일정 조건을 만족하는 동안 같은 실행문을 반복 while문 while문은 조건식을 먼저 검사하고 조건식이 참인 동안 실행문을 반복 중괄호의 사용법과 들여쓰기 실행문은 항상 중괄호로 묶어서 명확히 한다 중괄호 안의 실행문은 들여썼을 때 읽기 쉽다 while(1) // 1은 반복문에서 항상 참이라는 것을 의미 ==> 즉 break문이 없으면 무한으로 반복된다 for문 같은 반복문인 while문과 다르게 for문은 원하는 횟수만큼 반복할 때 사용 for문 사용 시 주의점 초기식, 조건식, 증감식은 반복 횟수를 알기 쉽게 작성한다 반복 횟수를 세는 변수를 반복문 안에서 바꾸지 않는 것이 좋다 do~while문 while문, for문은 조건식을 먼저 확인하는 반면 do ~ while문은 일단 반복할 문장을..

    if문 활용과 switch ~ case 문

    if문 활용과 switch ~ case 문

    if 문 중첩 선행조건이 꼭 필요할 때 if문을 중첨해서 사용한다 if문을 중첩해서 쓰는 이유 선행조건이 있으면 불필요한 조건 검사를 하지 않는다 선행조건이 없어도 실행 효율을 위해 의도적으로 중첩해 사용할 수 있다 else 결합 문제 중괄호를 해주냐 안해주냐에 따라서 코드의 의미가 달라짐 #include int main(void) { int a = 10, b = 20; if (a 0) { printf("ok"); } } //중괄호를 생략하고 안 하고에 따라서 의미가 달라짐 else { printf("ok"); } return 0; } 댕글링 else 문제 if문을 중첩해서 사용할 때 뒤따르는 else의 위치가 모호해지면서 ..

    if 문

    if 문

    if 문의 형식 if 문의 기본 형식 if(a>10) //조건식 { b=a; //실행문 } 읽기 쉬운 코드를 위한 규칙 1. if문은 중괄호 ({})를 사용하고 들여쓰기하여 실행문을 명확히 구분하는 것이 좋다 ==> 중괄호는 실행문이 한 문장일때만 삭제할 수 있다. 2. 실행할 문장이 두 문장 이상이면 반드시 중괄호로 묶어야 한다 if ~ else 문 조건을 만족하지 못할 때 별도의 실행문이 있으려면 if ~ else 문을 사용하면 된다 if (a>=0) //조건식 { a=1; //실행문1 } else { a=-1; //실행문2 } if ~ else문의 규칙 1. if ~ else 문의 else에는 조건을 사용하지 않는다 ==> else ( a > -1 ) ==> 불가능 2. 실행할 문장이 두 문장 이상..

    그 외 유용한 연산자 (2)

    그 외 유용한 연산자 (2)

    조건, 비트 연산자, 연산 우선순위 및 방향 조건 연산자 조건 연산자는 유일한 삼항 연산자로 ? 와 : 기호를 함께 사용한다. a = 10, b = 20을 대입하면 10 > 20은 거짓이다. 조건 연산자에서 거짓일 때는 세 번째 값(b)을 선정한다. 선정한 세 번째 값(b)을 res에 대입한다. 조건 연산자의 피연산자에 대입식 사용하기 조건 연산자의 피연산자에 대입식을 직접 사용할 수도 있다 바람직한 사용법 (a>b) ? (res1 = a) : (res2 = b); 참일 때와 거짓일 때 그 결과를 반영하는 대상이 다를 때 유용하다. 조건 연산자는 코드를 간략히 만들어주는 효과가 있으며 매크로 함수에 사용하면 좋으나 가독성을 떨어뜨릴수도 있으므로 필요한 곳에만 사용하는 것이 중요하다. 비트 연산자 비트 연..

    그 외 유용한 연산자 (1)

    그 외 유용한 연산자 (1)

    형 변환, sizeof, 복합대입, 콤마 연산자 형 변환 연산자 형 변환 연산자는 피연산자가 1개이며 피연산자의 값을 원하는 형태로 바꾼다. (자료형)피연산자 자동 형 변환 ==> 컴파일러는 컴파일 과정에서 피연산자의 형태가 다르면 형태를 일치시키는 작업을 수행 (컴퓨터는 데이터의 형태에 따라 다른 연산 방법을 사용, 피연산자가 2개 이상이라면 피연산자의 형태는 같아야 함) sizeof 연산자 sizeof 연산자는 피연산자를 하나만 사용할 수 있으며 피연산자의 크기를 바이트 단위로 계산해서 알려준다 sizeof(피연산자) 피연산자 ==> 변수, 상수, 수식, 자료형 등 #include int main(void) { int a = 10; double b = 3.4; printf("int형 변수의 크기 : ..

    산술 연산자, 관계 연산자, 논리 연산자 (2)

    산술 연산자, 관계 연산자, 논리 연산자 (2)

    관계, 논리 연산자와 연산의 결과값을 처리하는 방법 관계 연산자 대소 관계 연산자 동등 관계 연산자 == (같다) != (같지 않다) 0 = 거짓 (false) 1 = 참 (true) 논리 연산자 && (AND) 연산자 || (OR) 연산자 ! (NOT) 논리부정 주의할 것 숏 서킷 룰 ==> 좌항만으로 &&와 || 연산 결과를 판별하는 기능이다. && 연산자는 좌항이 거짓이면 우항과는 관계없이 결과는 거짓이 되기 때문이다. || 연산자는 좌항이 참이면 우항과 관계없이 결과가 참이다. 연산의 결과값을 처리하는 방법 연산을 실행한 다음 연산의 결과값은 변수에 저장하지 않으면 버려진다. 따라서 연산 결과를 곧바로 사용하거나 대입 연산을 통해 다른 변수에 저장해야 한다. 연산식이 컴퓨터 내부에서 처리되는 방식..

    산술 연산자, 관계 연산자, 논리 연산자 (1)

    산술 연산자, 관계 연산자, 논리 연산자 (1)

    산술, 대입, 나누기 나머지, 증감 연산자 산술 연산자 더하기(+), 빼기(-), 곱하기(*), 나누기(/), 나머지(%) 대입 연산자 = (대입 연산자) 오른쪽 수식의 결과를 왼쪽 변수에 저장한다 a = 10; ==> 상수의 값을 변수에 저장 sum = a + b; ==> 연산의 결과값을 변수에 저장 나누기 연산자와 나머지 연산자 / ( 나누기 연산자) banana = 5 / 2; ==> 2 ( 몫이 2 ) % (나머지 연산자) orange = 5 % 2; ==> 1 ( 나머지가 1 ) 증감 연산자 증감 연산자 단항 연산자로 피연산자의 값을 1 증가시키거나 1 감소시킨다. 증가 연산자 ( a = a + 1; ) 과 같은 의미이다 ++a; 감소 연산자 --a; 전위 표기 증감 연산자가 피연산자 앞에 놓임..