반응형
printf()를 사용하여 소수점 이하 두 자리 수
소수점 이하 두 자리까지 숫자를 쓰려고 하는데printf()
다음과 같습니다.
#include <cstdio>
int main()
{
printf("When this number: %d is assigned to 2 dp, it will be: 2%f ", 94.9456, 94.9456);
return 0;
}
프로그램을 실행하면 다음과 같은 출력이 표시됩니다.
# ./printf
When this number: -1243822529 is assigned to 2 db, it will be: 2-0.000000
왜 그런 것일까요?
고마워요.
네가 원하는 건%.2f
,것은 아니다.2%f
.
또, 이 경우,%d
와 함께%f
;)
#include <cstdio>
int main()
{
printf("When this number: %f is assigned to 2 dp, it will be: %.2f ", 94.9456, 94.9456);
return 0;
}
다음과 같이 출력됩니다.
이 번호 94.945600이 2dp에 할당되면 94.95가 됩니다.
printf 포맷 옵션에 대한 자세한 내용은 여기를 참조하십시오.
용도:"%.2f"
변형을 주기도 합니다.
의 정규 사양에 대해서는, POSIX 사양을 참조해 주세요.printf()
형식을 지정합니다.POSIX 엑스트라와 코어 C99 사양이 분리되어 있는 것에 주의해 주세요.구글 검색에서 볼 수 있는 C++ 사이트도 있지만, SO의 다른 곳에서 볼 수 있는 코멘트로 미루어 볼 때, 적어도 몇몇은 의심스러운 평판을 가지고 있다.
C++로 코딩하고 있기 때문에 아마 피해야 할 것 같습니다.printf()
그리고 그 친척들.
위해서%d
파트는 이 프로그램을 어떻게 작동합니까? 및 소수점 이하에 대해서는 다음을 참조하십시오.%.2f
%d와 같은 형식을 사용해 보십시오.%02d
int iAmount = 10050;
printf("The number with fake decimal point is %d.%02d", iAmount/100, iAmount%100);
또 다른 방법은 다음과 같이 %f를 사용하여 인쇄하기 전에 두 배로 주조하는 것입니다.
printf("The number with fake decimal point is %0.2f", (double)(iAmount)/100);
나의 2센트 :)
언급URL : https://stackoverflow.com/questions/4784336/two-decimal-places-using-printf
반응형
'programing' 카테고리의 다른 글
컴포넌트의 다른 모듈에서 커스텀 디렉티브를 테스트하는 방법 (0) | 2022.07.11 |
---|---|
사용자가 C에 입력한 문자열을 읽으려면 어떻게 해야 하나요? (0) | 2022.07.11 |
JEST 테스트에서 글로벌 Vue.js 변수를 조롱하는 방법 (0) | 2022.07.11 |
소품 기본값(VueJ)에서 이 / VM 인스턴스에 액세스 (0) | 2022.07.11 |
첫 번째 인스턴스에서만 문자열 분할 - java (0) | 2022.07.11 |