PX-27-实数编程
1.实数单精度和双精度
#include<stdio.h> #include<float.h> #include<limits.h> void main1() { float fl = 10.5; //printf("%f", fl); printf("\n%d", sizeof(10.5));//实数双精度常量,8个字节 printf("\n%d", sizeof(10.5f));// float类型常量,4个字节 getchar(); } void main2() { //int num = 3 / 5; int num = 3.2; //赋值号自动转换类型 ,printf不会 printf("%d", num); getchar(); }
2.指数的概念
void main3() { float fl = 19.3456e-25; //E 10, 指数只能是整数 printf("%f", fl); getchar(); }
手机振动器 xyz 左边
小数点后面最多显示 6~7 , 15~16 位

3.判断float的相等
void main5() { // == 成立是1,不成立是0 float fl1 = 1.0000000000001; //float,有效数字6-7位 ,后续就不等了 //double 超过15 位也不行 float fl2 = 1.000000000000003; printf("%d", fl1==fl2); getchar(); }
4.float 和 double 类型的极限
#include<float.h>
void main4() { //long double >=double printf("\n%d,%d,%d", sizeof(float), sizeof(double),sizeof(long double)); getchar(); }
5.定点数和浮点数
void main7() { printf("%d\n%f", INT_MAX, FLT_MAX); getchar(); }
6.计算三角形的面积 (游戏中的巡逻面积)
#include<math.h> #include<stdlib.h> #include<stdio.h> //10,17 1.07 1.03 void main10() { double a = 3, b = 5, c = 4; double p = (a + b + c) / 2; double S = sqrt(p*(p - a)*(p - b)*(p - c)); printf("面积S=%f", S); getchar(); }
C语言常用的库函数
代码:
#include<stdio.h> #include<float.h> #include<limits.h> void main1() { float fl = 10.5; //printf("%f", fl); printf("\n%d", sizeof(10.5));//实数双精度常量,8个字节 printf("\n%d", sizeof(10.5f));// float类型常量,4个字节 getchar(); } void main2() { //int num = 3 / 5; int num = 3.2; //赋值号自动转换类型 ,printf不会 printf("%d", num); getchar(); } void main3() { float fl = 19.3456e-25; //E 10, 指数只能是整数 printf("%f", fl); getchar(); } void main4() { //long double >=double printf("\n%d,%d,%d", sizeof(float), sizeof(double),sizeof(long double)); getchar(); } void main5() { // == 成立是1,不成立是0 float fl1 = 1.0000000000001; //float,有效数字6-7位 ,后续就不等了 float fl2 = 1.000000000000003; printf("%d", fl1==fl2); getchar(); } void main6() { printf("%f,%.100f", FLT_MAX, FLT_MIN); printf("\n%f,%.500f", DBL_MAX, DBL_MIN); getchar(); } void main7() { printf("%d\n%f", INT_MAX, FLT_MAX); getchar(); }

浙公网安备 33010602011771号