瑞星卡卡安全论坛技术交流区系统软件 【求助】关于整型乘以0.9的问题

1   1  /  1  页   跳转

【求助】关于整型乘以0.9的问题

【求助】关于整型乘以0.9的问题


main()
{
  int w,x;/* w是表示重量,x表示总金额.*/
  scanf("%d",&w);
  if(w>=5)/*重量大于5kg,九折优惠*/

  x=w*1.5*0.9;/*单价是:1.5元*/

  else

  x=w*1.5;

  printf("x=%d",x);/*输出金额*/


}


这里有些算法是正确的有些不是正确的,请问,该怎么弄好?
最后编辑2007-06-04 22:25:27
分享到:
gototop
 

【回复“过客2007”的帖子】把x的变量类型定义为float型,把printf("x=%d",x);改为printf("x=%f",x);就可以了
gototop
 

【回复“过客2007”的帖子】其实你这个程序也没错,因为表达式的计算结果是双精度型的,赋给整型变量x时系统会自动进行数据转换,跟用强制类型转换的效果是一样的,只不过数据精度不高而已
gototop
 

再次谢谢啦。
gototop
 
1   1  /  1  页   跳转
页面顶部
Powered by Discuz!NT