题目内容:
编写程序,从键盘输入一个不等于0的浮点数,然后分别输出这个浮点数的符号、整数部分和小数部分。例如输入-123.456,输出应该是(按下列格式输出,需要完全一致!!!):
输入格式:
浮点数
输出格式:
sign:-或+
integral part:
decimal fraction part:保留3位小数
输入样例:
-123.456
输出样例:
sign:-
integral part:123
decimal fraction part:0.456
代码如下:
//编写程序,从键盘输入一个不等于0的浮点数,然后分别输出这个浮点数的符号、整数部分和小数部分。
//例如输入-123.456,输出应该是(按下列格式输出,需要完全一致!!!):
//用if语句来实现该编程
#include<stdio.h>
int main()
{
double x;
scanf("%lf",&x);
if(x>=0)
printf("sign:+\n");
else
printf("sign:-\n");//这里判断正负号,并且输出符号
int y=(int)x;//这儿强制转化数据类型
if(x<0)y=-y;
printf("integral part:%d\n",y);//这里输出整数部分
if(x<0)x=-x;
double z=x-y;
if(z<0)z=-z;
printf("decimal fraction part:%.3lf\n",z);//这里输出小数部分,“%.3lf”是输出3位小数
//若需要更高位数,可以把“3”改为其他数字,也可以改为“%lg”
return 0;
}
运行结果:
123.456
sign:+
integral part:123
decimal fraction part:0.456
--------------------------------
Process exited after 4.281 seconds with return value 0
请按任意键继续. . .
坚持不懈,必有收获
加油💪