분할출력프로그램에서 왜 float는 쓸 수 없는건가요?
외솔
2023.04.08
프로그램은 이렇습니다.
#include stdio.h
void main()
{
int second,remain;
int days,hours,minutes,rest;
printf(##계산할 초는?);
scanf(%d,&second);
days=second/(60*60*24);
second=second%(60*60*24);
printf(일은==%d\n,days);
hours=second/(60*60);
second=second%(60*60);
printf(시간은==%d\n,hours);
minutes=second/60;
rest=second%60;
printf(분은==%d\n,minutes);
printf(초는==%d\n,rest);
}
근데 여기서 변수를 int가 아닌 float 형으로 선언하면 오류가 뜨는데요. 그게 나머지 산술연산자 % 때문에 오류가 뜬다고 생각이 되는데 맞나요? 맞다고는 생각하는데 독학인지라..책엔 없어서 질문드려요(--)(__)
-
매1혻적 2023-04-08
아 감사합니다. 선배님 좋은하루 되세요 (--)(__)
-
개구리 2023-04-08
네 맞습니다. %(나머지 연산자)때문입니다.
제가 알고 있는 범위내에서 이유를 들자면
소수형이라 나머지 연산을 해도 나머지가 없고
몫만 존재하기 때문입니다.