zerofunc

C언어 기초 - 연산자 본문

IT/C언어

C언어 기초 - 연산자

0penster 2013. 11. 29. 23:54

연산자는 C언어를 배울때

기초가되며 뼈가되고 살이되는

꼭 알아야하는 것 중에 하나이다 ( 솔직히 거의 전부다 알아야 됨)

간단한 기본 문제들을 풀어서 해석해 보았다.


1. C언어에서 연산자의 종류와 연산의 우선 순위를 정리해보자.

- 산술 관계 논리 배정(대입)연산자가 있고 우선순위는 산술 > 관계 > 논리 > 배정(대입)순이다.

단항 

(),[],-,->,!

산술

*,/,%,+,- 

관계

<,<=,=>,>, ==,!=

논리

&&, || 

대입

=,+=,*=


2. 다음 프로그램에서 수식의 결과 값(참이나 거짓)은 무엇인가?

1
2
3
4
5
6
7
#include <stdio.h>
 
void main(){
 
int a=0,b=1,c=2,d=3;
 
}
cs

수식

결과값

a>b

c<d||b

2<!a+c

d>=b*c

0

1

1

1

3. 증감 연산자에서 전위형과 후위형의 차이를 설명하시오.

-전위형에 경우에는 우선 변수의 값을 증가 또는 감소를 시킨 후에 수식에 적용하고

후위형에 경우에는 현재 변수의 값을 그대로 수식에 적용시킨 후에 변수의 값을 증가 또는 감소시킨다.

4. 5개의 정수를 임의로 입력한 후, 조건 연산자를 사용하여 가장 작을 수를 출력하는 프로그램을 작성하시오.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h>
 
void main(){
 
int num1,num2,num3,num4,num5,min;
 
printf("정수 5개를 입력하시오:");
 
scanf("%d %d %d %d %d",&num1,&num2,&num3,&num4,&num5);
 
min = (num1<num2)?num1:num2; 
 
min = (min<num3)?min:num3;
 
min = (min<num4)?min:num4;
 
min = (min<num5)?min:num5;
 
printf("가장작은수 ::%d",min);
 
}
cs

ps.최솟값 min이 자기자신과 그다음 수를 비교함.

원래 for문과 배열을 배우면 더쉽게 할수있지만,

이때는 아직 배열을 배우지 않았으니 이게 최선의 방법이였다.

5. 다음 프로그램의 실행 결과를 알아보자.

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
#include <stdio.h>
 
#include <conio.h>
 
void main(){
 
int a=5, b=7, re1, re2;
 
re1 = a+4 > 14 || a*3 == 10// 9>14 || 15==10 =0;
 
re2 = b-5 > 3 && a*5 <= b+20// 2 > 3 && 15<=27; =0;
 
printf("re1 = %d re2 = %d\n",re1,re2);
 
}
 
#include <stdio.h>
 
#include <conio.h>
 
void main(){
 
int a=8,b=5,re1,re2;
 
re1 = a-- + a-- + +++ ++b; //8+8+7+7 = 30; a=6,b=7;
 
re2 = ++- +++ b++// 7-8+8 =7 b=9;
 
printf("re1 = %d re2 = %d\n",re1,re2);
 
)
cs

----------------------------------

:re1 =0 re2 : 0

아래: re1 =30 re2 = 7;

'IT > C언어' 카테고리의 다른 글

사용자 정의 함수 - 작은값  (0) 2013.11.30
반복문 응용 - 최대값구하기 ! (삼항연산자)  (0) 2013.11.30
반복문 - for문  (0) 2013.11.30
반복문 - While  (0) 2013.11.30
링크드 리스트를 이용한 스택과 큐  (0) 2013.11.29
Comments