2015년 5월 26일 화요일

C/C++ 제어문 연습 문제

1. 양의 정수를 입력받아서 1이면 "1st", 2라면 “2nd", 3이면 ”3rd" 나머지의 경우는 숫자 뒤에 “th”를 붙여서 화면에 출력하는 프로그램을 작성하라. 만약 0이하의 숫자가 입력되었다면 다시 입력하도록 한다.
2. 다음 반복문이 화면에 표시하는 결과는 무엇인가?
int iA;
for (iA=36; iA>0; iA/=2) {
   printf("%d ", iA);
}


3. 근의 공식을 이용하여 2차방정식의 계수를 입력하면 그 해를 출력하는 프로그램을 작성하라.
4. 2에서 9사이의 정수를 입력받아 해당하는 구구단을 출력하는 프로그램을 작성하라. 그 외의 숫자가 입력되었다면 다시 입력받도록 한다.
5. 100이하의 모든 솟수(prime number)를 출력하는 프로그램을 작성하라. (솟수란 1과 자신의 수로만 나누어 떨어지는 정수를 말한다.)
6. 라인트레이서의 바닥감지 센서로 부터 검은색 선의 감지 상태에 따라 이진수 000, 001, 010, 100 값이 변수 ucLineStatus 에 자동으로 저장된다고 하자. 좌우모터는 변수 ucMotor 값에 00(정지), 01(우모터만 on, 즉 좌회전), 10(좌모터만 on, 즉 우회전), 11(강제정지) 값을 써주면 제어된다고 가정하자. 라인트레이서가 라인을 잘 추종하도록 제어하는 프로그램을 작성하라. (ucLineStatus 변수값에 따라서 적절한 모터제어 결과가 화면에 출력되도록 작성할 것)
7. 사용자가 입력한 정수값이 소수(prime number)이면 프로그램을 종료하고 아니면 다시 정수값을 입력받는 프로그램을 작성하라.

8. 사용자가 입력한 int형 변수 x와 y에 대해 x를 y로 나눈 몫과 나머지를 화면에 각각 출력하는 프로그램을 작성하시오. 단, 나머지가 0일 경우 그것은 출력하지 않아야 한다.

9. 일차 방정식 (a2+1)x+b(a+b)=0의 해를 구하는 프로그램을 작성하라. a와 b는 사용자로부터 double형으로 입력 받는다.

10. 월소득(long형)을 입력 받아서 그것에 대한 소득세를 계산하여 출력하는 프로그램을 작성하라. 소득세율은 다음과 같다.

소득이    500,000원 이하는 0%
2,500,000원 이하는 0.5%
4,000,000원 이하는 1.0%
                      7,000,000원 이하는 2.0%,
                      그 이상은 4.0%
11. 다음과 같이 화면에 출력하는 프로그램을 반복문 명령을 이용하여 작성하라.

12. float형 변수 fa, fb, fc 에 각각 사용자로 부터 정수값을 입력 받은 후 크기 순으로 나열했을 경우의 중간 값을 화면에 출력하는 프로그램을 작성하라. 예를 들어 1.2 10.0 –3.5 를 사용자가 입력했다면 크기순으로 정렬하면 10.0 > 1.2 > -3.5 이다. 따라서 가운데의 1.2를 출력해야 한다.
13. 1000 이하의 양의 정수 중 3의 배수이거나 5의 배수인 것들을 역순으로 출력하는 프로그램을 작성하라. 즉 다음과 같이 화면에 출력되어야 한다. 만약 3의 배수이고 동시에 5의 배수인 경우 대괄호 안에 숫자를 출력한다.
1000 999 996 995 993 [990] 987 985 984 981 980 978 [975] 972 ....9 6 5 3
14. 다음 프로그램이 실행된다면 화면에 어떻게 출력되는가?
#include <stdio.h>
int main(int argc, char **argv) {
   for(char ca='a';ca!='g';ca++) {
   printf("%c ",ca);
   }
}

댓글 없음:

댓글 쓰기