πŸ‘©‍πŸ’» C

C μ–Έμ–΄ - μ—°μ‚°μžμ˜ μ’…λ₯˜ , μ—°μ‚°μž μš°μ„ μˆœμœ„ , μ—°μ‚°μž μ‚¬μš©, μ΄μŠ€μΌ€μ΄ν”„ μ‹œν€€μŠ€

Newmon 2020. 2. 27. 01:00

 

*μ—°μ‚°μžμ™€ ν”Όμ—°μ‚°μž

 

μ—°μ‚°μž(Operator) : μ—°μ‚°μ„ μˆ˜ν–‰ν•˜λŠ” κΈ°ν˜Έ

ν”Όμ—°μ‚°μž(Operand): μ—°μ‚°μ— ν¬ν•¨λ˜λŠ” λ³€μˆ˜ λ° μƒμˆ˜

ex) X - Y / μ—°μ‚°μž : - ν”Όμ—°μ‚°μž : X,Y

 

 

*λŒ€μž… μ—°μ‚°μž

ν”νžˆ 값을 λ³€μˆ˜μ— λ„£μ–΄μ€„λ•Œ μ‚¬μš©ν•˜λŠ” λ“±ν˜Έ(=) λ₯Ό λ§ν•œλ‹€.

μš°λ³€ν•­μ„ μ’Œλ³€ν•­μ— μ‚½μž…ν•˜κ²Œ λœλ‹€. ex ) int a = 4;   

 

*μ‚°μˆ  μ—°μ‚°μž

 

 + : λ”ν•˜κΈ°

 -  : λΉΌκΈ°

*  : κ³±ν•˜κΈ°

/  : (λͺ«λ§Œ)

% : (λ‚˜λ¨Έμ§€λ§Œ κ΅¬ν•˜λ©°, Modular 라고 λΆ€λ₯Έλ‹€.)

 

#include <stdio.h>
int main(void){
    int a,b ;
    scanf("%d%d",&a,&b);
    printf("%d + %d = %d\n", a,b,a+b);
    printf("%d - %d = %d\n", a,b,a-b);
    printf("%d * %d = %d\n", a,b,a*b);
    printf("%d / %d = %d\n", a,b,a/b);
    printf("%d %% %d = %d\n", a,b,a%b);
}

%λ₯Ό 좜λ ₯ν• λ•ŒλŠ” 2번 μž…λ ₯ν•΄μ€˜μ•Ό ν•œλ‹€. (λ”°μ˜΄ν‘œ μ•ˆμ—μ„œ, "%%")

 

*μ΄μŠ€μΌ€μ΄ν”„ μ‹œν€€μŠ€ (Escape Sequence) 

 

νŠΉμ •ν•œ λ‚΄μš©μ„ 좜λ ₯ν•˜κΈ° μœ„ν•œ 좜λ ₯λ¬Έ μ•ˆμ—μ„œ μ‚¬μš©λ˜λŠ” 문법

\n : μ€„λ°”κΏˆ

\t : μˆ˜ν‰ νƒ­ μ‚½μž…

\\ : "\" μΆœλ ₯

\" : ν° λ”°μ˜΄ν‘œ μ‚½μž…

\b : λ°± μŠ€νŽ˜μ΄μŠ€ μ‚½μž…

 

 

*관계 μ—°μ‚°μž

 

일반적으둜 μ‚¬μš©ν•˜λŠ” μˆ˜ν•™κΈ°ν˜Έμ™€ λ™μΌν•˜κ²Œ 쓰인닀.

λŠλ‚Œν‘œ(!) λŠ” not으둜 μ‚¬μš©λœλ‹€.

==          !=          >            <              >=              <= 

 

#include <stdio.h>
int main(){
    int a, b;
    scanf("%d %d", &a, &b);
    printf("%d\n", a>b);   //μ°Έ 1 κ±°μ§“ 0

}

 

*논리 μ—°μ‚°μž

 

 !(NOT)          &&(AND)         ||(OR)

#include <stdio.h>
int main(void){
    int a = 10, b=8,c=5;
    
    printf("%d\n", !a);
    printf("%d\n", a && b);
    printf("%d\n", (a>b )&&(b>c));
    return 0;
}

 

*증감 μ—°μ‚°μž

 

    ++i : i의 κ°’을 1 μ¦κ°€μ‹œν‚¨ ν›„에 "μ¦κ°€λœ κ°’"을 λ°˜ν™˜

    i++ : iλ₯Ό 1 μ¦κ°€μ‹œν‚€λ©°, "μ¦κ°€λ˜κΈ° μ „ κ°’"을 λ°˜ν™˜

 

    --i : i의 값을 1 κ°μ†Œμ‹œν‚¨ ν›„ "κ°μ†Œλœ κ°’"을 λ°˜ν™˜

    i-- : iλ₯Ό 1 κ°μ†Œμ‹œν‚€λ©° "κ°μ†Œλ˜κΈ° μ „ κ°’"을 λ°˜ν™˜

#include <stdio.h>
int main(void){

    int a = 1 ;

    printf("%d\n" , ++a);
    printf("%d\n" , a++);
    printf("%d\n" , ++a);
    return 0;
}

>>>>좜λ ₯ κ²°κ³Ό
2
2
4

 

 

*μ‚Όν•­ μ—°μ‚°μž

 

    ?:

 

μ„Έκ°œμ˜ 항을 μ΄μš©ν•˜μ—¬ 쑰건문을 μˆ˜ν–‰ν•  수 μžˆλŠ” μ—°μ‚°μž

#include <stdio.h>

int main(void){
    int a = 7, b= 7;
    printf("%d\n", (a !=b) ? 100 : -100);  //#a=bκ°€ True이면 μ™Όμͺ½κ°’, μ•„λ‹ˆλΌλ©΄ 였λ₯Έμͺ½κ°’이 λ¦¬ν„΄λœλ‹€.
    return 0;
}

 

 

*λΉ„νŠΈ μ—°μ‚°μž

 ! ~ & ^ >> <<

    ~ : λΆ€μ •(NOT) ex) ~00001110 = 11110001

    & : κ·Έλ¦¬κ³ (AND) ex) 00001101 & 00000011 = 00000001 (λ‘˜λ‹€ 1μΈκ²½μš°μ— 1)

    | : λ˜λŠ”(OR) ex) 11001100 | 0011000 = 11111100 (λ‘˜μ€‘ ν•˜λ‚˜λΌλ„ 1이면, 1)

    ^ : λ°°νƒ€μ (XOR) ex) 11001111 ^ 00000011 = 11001100 (λ‘κ°œμ˜ κ°’쀑 ν•˜λ‚˜λ§Œ 1μΌλ•Œλ§Œ κ²°κ³Όκ°€ 1)

    <<: μ™Όμͺ½ μ‹œν”„νŠΈ ex) 00001111 <<3 = 01111000 (μ™Όμͺ½μœΌλ‘œ 3이동.)

 

 

 

*μ—°μ‚°μžμ˜ μ—°μ‚°μš°μ„ μˆœμœ„