比如
int x=1;
x=x+1/2;
printf(“%d”,x);
不可以输出分数,但是可以使用分数计算,其实1/2在计算机中的意思就是1“除以”2,输入的时候,可以输出小数,但要将变量定义呈float或者double类型
如:
float x=1.0;
x=x+1/2;
printf("%f",x)
输出结果为:1.5;追问
如:
float x=1.0;
x=x+1/2;
printf("%f",x)
输出结果为:1.5;追问
如果硬要用int型会出现什么结果
追答如果用int型的话,那么它会自动化为int型的,不会出错
如:
int x;
x=1/2=0
or
x=2/3=0
or
x=5/4=1
明白了吗?不明白可以追问
温馨提示:答案为网友推荐,仅供参考
第1个回答 2013-01-08
可以,但你变量定义不能用int,int是整数,要用float或者double,分别对应输出格式是%f和%lf。分数1/2这样值是0,要写成1.0/2这样的格式才是0.5.
程序如下:
#include "stdio.h"
main()
{
float x=1;
x=x+1.0/2;
printf("%f\n",x);
return 0;
}//结果:1.5
或
#include "stdio.h"
main()
{
float x=0.5;
printf("%f\n",x);
return 0;
}
//结果:0.5追问
程序如下:
#include "stdio.h"
main()
{
float x=1;
x=x+1.0/2;
printf("%f\n",x);
return 0;
}//结果:1.5
或
#include "stdio.h"
main()
{
float x=0.5;
printf("%f\n",x);
return 0;
}
//结果:0.5追问
如果硬要用int型会出现什么结果
第2个回答 2013-01-08
C语言本身不支持分数运算
int x=1;
x=x+1/2;//这里1/2是整除结果为0
printf(“%d",x);//输出1
当然可以编程实现分数的四则运算
int x=1;
x=x+1/2;//这里1/2是整除结果为0
printf(“%d",x);//输出1
当然可以编程实现分数的四则运算
第3个回答 2013-01-08
可以用小数,但是会有精度的损失。
第4个回答 2013-01-08
将x变成float类型,这样输出就是带小数点的,