2010 9월 13일 수업내용.
간단한 사칙연산을 이용, 두 수와 사칙연산을 선택한 후
답을 출력하여 재 사용 여부를 묻는 소스
#include <stdio.h>
int main(void)
{
float num1, num2; //실수형변수 num1, num2를 선언
char k, re; //문자열변수 k,re선언
while(1) //반복문, 조건은 '참'
{
printf("첫번째 수를 입력하세요: "); //수입력1
scanf("%f" , &num1); //scanf를 이용해 num1에 주소값(실수)을 받아옴
printf("두번째 수를 입력하세요: "); //수입력2
scanf("%f" , &num2); //scanf를 이용해 num2에 주소값(실수)을 받아옴
fflush(stdin); //쉽게 말해, 버퍼에 남은 '\n'값을 제거하기 위해 사용함
printf("사칙연산을 입력하세요(+,-,*,/): "); //사용할사칙연산을 입력
scanf("%c" , &k); //문자열을 k값에 주소지정
if( k=='+' ) //만약 k가 덧셈일 경우
{
printf("%.2f + %.2f = %.2f입니다.\n" , num1, num2, num1+num2); //(소수점둘째자리까지)덧셈 결과 출력
} else if(k=='-') { //만약 k가 뺄셈일 경우
printf("%.2f - %.2f = %.2f입니다.\n" , num1, num2, num1-num2); //(소수점둘째자리까지)뺄셈 결과 출력
} else if(k=='*') { //만약 k가 곱셈일 경우
printf("%.2f * %.2f = %.2f입니다.\n" , num1, num2, num1*num2); //(소수점둘째자리까지)곱셈 결과 출력
} else if (k=='/') { //만약 k가 나눗셈일 때
if(num2==0)printf("0으로 못나와 \n"); //num2값에 0이 입력됬을때 나눗셈 불가
else printf("%.2f / %.2f = %.2f입니다.\n" , num1, num2, num1/num2);//(소수점둘째자리까지)나눗셈 결과 출력
}
else {
printf("잘못된 사칙연산을 입력하였습니다.\n"); //윗 사칙연산 외 나머지 모든 경우에 출력
}
fflush(stdin);
printf("Retry? (y/n) : "); //재사용 여부
scanf("%c" , &re); //문자열을 're값'으로 주소지정
if(re=='n') break; //'n'입력시 빠져나옴
}
return 0;
}
-출력 결과-