首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

一个容易的程序(新手)

2013-09-15 
一个简单的程序(新手)#include iostreamusing namespace stdlong longp_C,p_Wlong double percentint

一个简单的程序(新手)
#include <iostream>
using namespace std;
long long  p_C,p_W;
long double percent;
int main()
{
cin>>p_W;
cout<<endl;
cin>>p_C;
percent=p_C/p_W*100;
cout<<percent<<endl;
return 0;
}
给p_W赋值和p_C(任意),然后求percent。为什么当p_W大于p_C时,输出总是0呢?是不是精度有问题啊?
[解决办法]
是的,用float就可以了

[解决办法]
p_C/p_W*100; 如果不想使用符点运算,可以这样写

p_C*100/p_W;  注意, 前提是p_C*100不会溢出.
[解决办法]
long long 类型在除法运算时是不保留小数的,
所以当p_W大于p_C时,商为0,结果就为0了。
使用double,float类型就可以了
[解决办法]

percent=(long double)p_C/(long double)p_W*100.0;

热点排行