C언어를 공부하며 친구가 처음으로 프로그램짜보라고 퀴즈를 냈다.
퀴즈는 단순 연산이 되는 프로그램을 만들어 볼것.
- 숫자 한개를 입력받고
- 연산자를 입력받고 ( + , - , * , / , %)
- 숫자를 입력받은 뒤 연산 해주는 프로그램
```c
#include <stdio.h>
int main(){
int num1;
int num2;
char operator;
int result;
printf("숫자를 입력하세요\n");
scanf("%d",&num1);
printf("부호를 입력하세요\n");
scanf(" %c",&operator);
printf("숫자를 입력하세요\n");
scanf(" %d",&num2);
```
먼저 생각 없이 할수있던것은 scanf를 이용한 값입력받기였다.
다음 연산자에 따라연산을 해야하기 때문에 if문을 사용하여 연산을 시켰다.
if(c1 == '+'){
result = num1 + num2;
printf("%d %c %d = %d\n",num1,c1,num2,result);
}
else if(c1 == '-'){
result = num1 - num2;
printf("%d %c %d = %d\n",num1,c1,num2,result);
}
else if(c1 == '*'){
result = num1 * num2;
printf("%d %c %d = %d\n",num1,c1,num2,result);
}
else if(c1=='/'){
result = num1 / num2;
printf("%d %c %d = %d\n",num1,c1,num2,result);
}
else if(c1 =='%'){
result = num1 % num2;
printf("%d %c %d = %d\n",num1,c1,num2,result);
}
result 변수를 이용하여 각 연산에 맞는 연산을 하게 하였고, 이렇게 간단히 문제를 풀어봤지만 그뒤에 int허용 범위를 넘어선
오버플로우가 발생하였을때 등 다른 문제를 냈지만 그거까지는 아직 풀지못했다..
좀더 공부하고나서 다시 다 풀어봐야지
'IT 공부 > C언어' 카테고리의 다른 글
[C언어] 배열, 2진수를 10진수로 10진수를 2진수로 (0) | 2021.08.02 |
---|---|
[C언어] 포인터와 메모리 간단 요점 정리 (0) | 2021.08.01 |
[C언어] Continue (0) | 2021.07.29 |
[C언어] while문 , 1110번 백준 더하기싸이클 (3) | 2021.07.29 |
[C언어] for문을 이용한 quiz (0) | 2021.07.20 |