[C 언어] 조각별 함수 평가 제어 출력 형식 부동 소수점 소수 자릿수까지 정확

경우는 다음과 같다

//分段函数求值
#include <stdio.h>
//#include <math.h>
int main()
{
    
    
	float x,y;
	printf("请输入x的值:");
	scanf("%f",&x);
	printf("\n");
	
	if(x<1)
		{
    
    
			y=x;
		}
	else if(x>=1&&x<10)
		{
    
    
			y=2*x-1;
		}
	else if(x>=10)
		{
    
    
			y=3*x-11; 
		}
	printf("y=%.3f\n",y);
	return 0;
		
} 

테스트 출력

여기에 이미지 설명 삽입
여기에 이미지 설명 삽입
여기에 이미지 설명 삽입
여기에 이미지 설명 삽입
여기에 이미지 설명 삽입
요점은 if 조건의 판단에 주의를 기울이고 , 로 표현해야 한다는 점 &&입니다. 그냥 &로 쓰지 마세요.
또 다른 흥미로운 점은 출력 결과의 형식에 대한 제어입니다. 아래의 출력 형식을 변경해 보십시오.

작성 printf("y=%.5f\n",y);하고 테스트하십시오.
여기에 이미지 설명 삽입
다시 작성 printf("y=%.2f\n",y);하고 다시 시도하십시오.
여기에 이미지 설명 삽입
직접 작성한 printf("y=%f\n",y);다음 테스트하십시오.
여기에 이미지 설명 삽입
즉, y=%.3f출력 형식은 소수점 셋째 자리까지 정확합니다..3이 추가되지 않으면 기본적으로 소수점 이하 6자리까지 정확합니다. double 및 float 모두 기본적으로 소수점 이하 6자리까지 정확합니다.

그러면 더 높은 정밀도로 동일한 내용을 작성할 수도 printf("y=%.8f\n",y);있지만 의미는 크지 않을 수 있습니다.
여기에 이미지 설명 삽입

추천

출처blog.csdn.net/qq_44731019/article/details/123569444