3. C/C++ 연산자

C++ 언어 2020. 9. 25. 18:12
반응형

1. 다음 프로그램의 실행결과는? 

#include <cstdio>
int main()
{
     	int a=5, b=3, c=10;
	int d, e, f, g;
	d = a>b;
	printf("a>b = %d\n", d);
	d = a<b;
	printf("a<b = %d\n", d);
	d = a + b < c + 6;
	printf("a + b < c + 6 = %d\n", d);
	d = a * b < c;
	printf("a * b < c = %d\n", d);
	a = (21/4) * 3;
	b = (a*a) / a;
	printf("a=%d b=%d\n", a, b); 
	a=b=c=23;
	printf("a=%d b=%d c=%d\n",a,b,c);
	a = -a;
	printf("-a = %d\n", a);
	a = 3.5;
	b = 2.8;
	c = a + b;
	printf("a=%d b=%d c=%d\n",a,b,c);
	putchar('K'); //문자 출력   
	putchar('o');
	putchar('r');
	putchar('e');
	putchar('a');   //putchar()함수는 자동으로 줄바꿈을 처리하지 않습니다.
	putchar('\n');
}

 

2. 다음 중 변수명으로 사용할수 없는 것은?

a       _b      bool         2b     _A       _6B      -book       st_        ba34_          ab+

t      -g       new       c5         F        Q3            printf_       a-         St234-        int

 

3. 다음 프로그램의 결과는?

#include <cstdio>
int main()
{
        int a, b, c, d;
        char ch;
	printf("한 문자를 입력하세요 = ");
	ch = getchar();
	printf("입력받은 문자는 %c 입니다\n", ch); 
	ch = 'C';
	a = 10;
	float fi = 20.1;
	printf("%c + %d = %d\n", ch, a, ch+a);
	printf("%d + %f = %f\n", a, fi, a+fi);
	a = 10;
	b=15;
	c=5;
	d=20;
	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);
	printf("%d != %d = %d\n", a, b, a!=b);
	printf("!(%d > %d) = %d\n", a, b, !(a>b));
	printf("(%d > %d) && (%d<%d) = %d\n",a,b,c,d,(a>b)&&(c<d));
	printf("(%d > %d) || (%d<%d) = %d\n",a,b,c,d,(a>b)||(c<d));
	printf("(%d < %d) && (%d<%d) = %d\n",a,b,c,d,(a<b)&&(c<d));
	printf("(%d < %d) || (%d<%d) = %d\n",a,b,c,d,(a<b)||(c<d));
	float res = (a=5, b=a+2, b++, c=b/a);
	printf("a= %d b=%d c=%d res=%f\n",a,b,c,res);
	return 0;
}

 

4. 다음 프로그램의 오류를 찾고(2군데) 출력되는 값을 적으세요.

#include <cstdio>
#define N 10;
int main()
{
	int i, a, b,c, d;
	N = N + 1;
	printf("N = %d\n", N);
	a=10;
	b=10;
	c = ++a;
	d = b++;
	printf("a=%d c=%d\n", a, c);
	printf("b=%d d=%d\n", b, d);
	a=2;
	b=4;
	c = ++a + ++b;
	printf("a= %d b=%d c = %d\n", a, b, c);
	a=2;
	b=4;
	c= a++ + ++b;
	printf("a = %d  b=%d c=%d\n", a, b, c);
	a=5;
	b=10;
	c= --a;
	d= b--;
	printf("a=%d  c=%d\n", a, c);
	printf("b=%d  d=%d\n", b, d);
	a=10;
	b=20;
	c = --a + b--;
	printf("a=%d b=%d c=%d\n", a, b, c);
	a=5;
	b=7;
	c = a-- + b--;
	printf("a=%d b=%d c=%d\n", a, b, c);
	a = 5;
	b = 8;
	c = a<b ? b : a;
	printf("c = %d\n", c);
	a = 10;
	b = a%2 ? 2 : 1;
	printf("b = %d\n", b);
	return 0;
}

 

 

5. 다음 프로그램의 실행 결과는?

변수의 유형 (자동변수, 외부변수, 정적변수,  레지스터 변수 )  
일반적으로 사용하는 변수는 auto가 생략된 형태이다. 

#include <cstdio>
int a=1000, b=2000, c=3000;
int main()
{
	printf("a=%d b=%d c=%d\n\n",a, b, c);
	{
		int a=101, b=201, c=301;
		printf(".....a=%d b=%d c=%d\n\n",a, b, c);
		{
			int a=201, b=222, c=232;
			printf("..........a=%d b=%d c=%d\n\n",a, b, c);
			{
			     printf("...............a=%d b=%d c=%d\n\n",a, b, c);
			}
		}
		a=a+2;
		b=b+2;
		c=c+2;
		printf(".....a=%d b=%d c=%d\n\n",a, b, c);
	}
	a++;
	b++;
	c++;
	printf("a=%d b=%d c=%d\n\n",a, b, c);
	return 0;
}

 

6. 다음 프로그램의 실행 결과는?

#include <cstdio>
void fun1();
void fun2();
int main()
{
	int i;
	printf("fun1함수 = "); 
	for(i=0;i<10;i++)
		fun1();
	printf("\n");
	printf("fun2함수 = ");
	for(i=0;i<10;i++)
		fun2();
	printf("\n");
	
	return 0;
}
void fun1()
{
	int n=0;
	n++;
	printf("%d ", n);
}
void fun2()
{
	static int n=0;
	n++;
	printf("%d ", n);
}

 

 

7. 다음 프로그램의 출력되는 값을 적으세요

#include <cstdio>
int main()
{
	int a, f , b, c = 15, d = 42;
	printf("%d %o %x\n", c, c, c);
	printf("%d %o %X\n", d, d, d);
	c = 3;
	d = 5;
	f = c | d;
	b = c & d;
	printf("c|d = %d c&d=%d\n", f, b);
	printf("c^d =%d, ~f = %d\n", c^d, ~f);
	printf("c << 2 = %d, d>>1=%d\n", c<<2, d>>1);
	printf("=================================\n");
	c = 8;
	d = 10;
	f = c | d;
	b = c & d;
	printf("c|d = %d c&d=%d\n", f, b);
	printf("c^d =%d, ~f = %d\n", c^d, ~f);
	printf("c << 2 = %d, d>>1=%d\n", c<<2, d>>1);
	printf("=================================\n");
	c = 21;
	d = 7;
	f = c | d;
	b = c & d;
	printf("c|d = %d c&d=%d\n", f, b);
	printf("c^d =%d, ~f = %d\n", c^d, ~f);
	printf("c << 2 = %d, d>>1=%d\n", c<<2, d>>1);
	return 0;
}

 

8. 진법 변환

반응형

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

6. C/C++ 연결리스트  (0) 2021.01.18
5. C/C++ 함수 기초  (0) 2020.11.23
4. C/C++ 동적 메모리  (0) 2020.11.05
2. C/C++ 함수 - 인수 전달 방법  (0) 2020.09.24
1. C/C++ 구조체 정렬하는 방법  (0) 2020.07.29
Posted by 명문코딩컴퓨터
,