윤성우 열혈강의 독파하자!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
연습문제만 풀면서 GO~~~~~~~~~
문제1] 10진수 8부터 20까지를 2진수와 16진수로 표현해보자
[08] = 2진수 1000 16진수 0x08 [09] = 2진수 1001 16진수 0x09 [10] = 2진수 1010 16진수 0x0A [11] = 2진수 1011 16진수 0x0B [12] = 2진수 1100 16진수 0x0C [13] = 2진수 1101 16진수 0x0D [14] = 2진수 1110 16진수 0x0E [15] = 2진수 1111 16진수 0x0F [16] = 2진수 10000 16진수 0x10 [17] = 2진수 10001 16진수 0x20 [18] = 2진수 10010 16진수 0x30 [19] = 2진수 10011 16진수 0x40 [20] = 2진수 10100 16진수 0x50 |
문제2] 10진수 5부터 18까지를 8진수로도 표현해 보자. 8진수에 대해서는 언급하지 않았지만 기본 단위숫자가 0부터 7까지 8개라는 특징만 이해하면 충분히 해결할 수 있다. 이 문제는 여러분이 진법에 대한 기본적인 원리를 이해했는지를 묻고 있는것이다.
[05] = 5 [06] = 6 [07] = 7 [08] = 10 [09] = 11 [10] = 12 [11] = 13 [12] = 14 [13] = 15 [14] = 16 [15] = 17 [16] = 20 [17] = 21 [18] = 22 |
문제3] 입력받은 음의 정수 값을 양의 정수 값으로 바꿔서 출력하는 프로그램을 작성해라. 만약에 -3이 입력되면 3이 출력이 되어야하고, -100이 입력이 되면 100이 출력이 되어야 한다. 단! 반드시 비트단위 연산자를 사용해서 구현해야 하며, 양의 정수 값은 입력되지 않는다고 가정하자.
답 } |
결과
|
문제4] 사용자로부터 입력받은 값의 두 배를 계산해서 출력해 주는 프로그램을 곱셈연산이 아닌 비트 쉬프트 연산을 이용해서 구현해보자. 또한 입력 값은 (-1073741825)보다 크고 (1073741824)보다 작다고 가정하자!! 참고로 int형 데이터를 2바이트로 인식하는 환경에서 이 문제를 해결할 경우에는 입력 값의 최대, 최소 범위가 위에서 언급한 범위의 반이라고 생각하기 바란다.
답 } |
결과
|
'소프트웨어 > C언어' 카테고리의 다른 글
C언어를 독파하자 - 다양한 형태의 반복문(stop) (0) | 2011.09.17 |
---|---|
C언어를 독파하자 - 상수와 기본자료형 (0) | 2011.09.16 |
C언어를 독파하자-변수와 연산자 (0) | 2011.09.16 |
C언어를 독파하자-문자열 (2) | 2011.09.16 |
C언어 독파하자 Printf (1) | 2011.09.16 |