函数接口定义为
void splitfloat(float x,int *intpate,float *fracpart);
代码如下
#include <stdio.h>
void splitfloat(float x,int *intpate,float *fracpart);
int main()
{
int intpate;
float x,fracpart;
printf("请输入一个数\n");
scanf("%f",&x);
splitfloat(x,&intpate,&fracpart);
printf("整数部分为%d\n",intpate);
printf("小数部分为%f",fracpart);
return 0;
}
void splitfloat(float x,int *intpate,float *fracpart)
{
*intpate=(int)x;
*fracpart=x-*intpate;
}
笔记:运用到了强制转换(int)取巧性的取到了float型数字的整数部分;
在这之中遇见的问题,例如本该运用scanf("%f",&x);来输入数字的值,但是我把%f错换成了%d,导致我输入了一个实数后,输出的整数部分和小数部分的取值都为0.这提醒我以后做题目需要更加严谨。