2022-03-12-C-Chap10-문제23
아래서 보여주는 코드는, Random Number를 출력하는 코드이다. 반복될수록 다양한 무작위 수를 반환하도록 작성하고 싶을 때, 다음 조건에 맞게 프로그램을 수정하시오.
조건
- 함수의 이름 및 변수명, 저장된 정수는 변경하지 않는다.
- 함수의 추가 및 삭제를 허용하지 않는다.
Source
#include<stdio.h>
bool flag = 1;
char yn = 'A';
void plus() {
int a, b;
printf("연산할 두 수를 입력하세요.");
scanf("%d %d", &a, &b);
printf("%d\n", a + b);
}
void minus() {
int a, b;
printf("연산할 두 수를 입력하세요.");
scanf("%d %d", &a, &b);
printf("%d", a - b);
}
void multiply() {
int a, b;
printf("연산할 두 수를 입력하세요.");
scanf("%d %d", &a, &b);
printf("%d", a * b);
}
void div() {
int a, b;
printf("연산할 두 수를 입력하세요.");
scanf("%d %d", &a, &b);
printf("%d", a / b);
}
void mod() {
int a, b;
printf("연산할 두 수를 입력하세요.");
scanf("%d %d", &a, &b);
printf("%d", a % b);
}
void bit() {
int a, b;
int x;
printf("연산할 두 수를 입력하세요.");
scanf("%d %d", &a, &b);
printf("비트 연산자를 입력하세요(1)>> 2)<< 3)& 4)| 5)^)");
scanf("%d", &x);
switch (x) {
case 1:
printf("%d\n", a >> b);
break;
case 2:
printf("%d\n", a << b);
break;
case 3:
printf("%d\n", a & b);
break;
case 4:
printf("%d\n", a | b);
break;
case 5:
printf("%d\n", a ^ b);
break;
default: break;
}
}
void multiple() {
int a, b;
printf("연산할 두 수를 입력하세요.");
scanf("%d %d", &a, &b);
int i = 1;
for (a; a * i <= b; i++)
printf("%d\n", a * i);
}
int main(void) {
while (flag) {
printf("원하는 계산기능을 고르시오\n1)덧셈 2)뺄셈 3)곱셈 4)나눗셈 5)나머지연산 6)비트연산 7)배수 구하기 8)종료\n");
int input = 0;
scanf("%d", &input);
switch (input) {
case 1: plus(); break;
case 2: minus(); break;
case 3: multiply(); break;
case 4: div(); break;
case 5: mod(); break;
case 6: bit(); break;
case 7: multiple(); break;
case 8: flag = 0; break;
default: break;
}
}
return 0;
}