이번 포스팅에서는 연산을 하는 동시에 연산이 몇 번 진행되었는가를 기억하는 계산기 코드를 작성해보았습니다.
while문을 통해 무한루프 반복문을 작성해도 되지만,
이번에는 for문을 활용해 딱 10번만 연산이 진행되도록 하였습니다.
각각의 연산이 횟수를 기억해야 하므로, 이 부분은 static 정적 지역 변수를 통해 구현하였습니다.
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int add(int x, int y); // 덧셈 함수
int sub(int x, int y); // 뺄셈 함수
int mul(int x, int y); // 곱셈 함수
int div(int x, int y); // 나눗셈 함수
int main(void)
{
char op; // 연산자_operation 저장
int x, y;
int i;
for (i = 0; i < 10; i++) // 연산 횟수를 10회로 제한
{
printf("연산을 입력하시오: ");
scanf("%d %c %d", &x, &op, &y);
if (op == '+')
{
printf("연산 결과: %d \n", add(x, y));
}
else if (op == '-')
{
printf("연산 결과: %d \n", sub(x, y));
}
else if (op == '*')
{
printf("연산 결과: %d \n", mul(x, y));
}
else if (op == '/')
{
printf("연산 결과: %d \n", div(x, y));
}
else
{
printf("지원되지 않는 연산자입니다. \n");
}
}
return 0;
}
int add(int x, int y)
{
static int count; // 정적 전역변수로 횟수 저장
count++;
printf("덧셈은 총 %d번 실행되었습니다.\n", count);
return (x + y);
}
int sub(int x, int y)
{
static int count;
count++;
printf("뺄셈은 총 %d번 실행되었습니다.\n", count);
return (x - y);
}
int mul(int x, int y)
{
static int count;
count++;
printf("곱셈은 총 %d번 실행되었습니다.\n", count);
return (x * y);
}
int div(int x, int y)
{
static int count;
count++;
printf("나눗셈은 총 %d번 실행되었습니다.\n", count);
return(x / y);
}
그럼 오늘도 즐거운 코딩!
반응형
'코딩 | 개념 정리 > C' 카테고리의 다른 글
[C언어] 로그인 비밀번호 검사하기 (0) | 2021.04.19 |
---|---|
[C언어] 주사위를 던져 각각의 면의 등장 횟수 구하기 (0) | 2021.04.17 |
[C언어] %f와 ,%lf의 차이점은?? (2) | 2021.04.14 |
[C언어] 함수를 활용해 소득세 계산하기 2 (0) | 2021.04.14 |
[C언어] 함수를 활용한 계산기 만들기 (0) | 2021.04.14 |