今天写了一小段关于日元、欧元兑美元汇率的程序时,遇到了一件非常有趣的事情,不敢独乐,发出来与大家共乐!
#include<iostream>
#include<string>
using namespace std;
int main()
{
const double usd_per_jpy=76.7620;
const double usd_per_eur=0.7248;
double money;
string symble;
cout<<"please input the money by the symble(jpy/eur/usd):"<<endl;
cin>>money>>symble;
if(symble=="jpy"){
cout<<money<<"jpy="<<money/usd_per_jpy<<"usd"<<endl;
}
else if(symble=="eur"){
cout<<money<<"eur="<<money/usd_per_eur<<"usd"<<endl;
}
else {
cout<<"sorry ,plese check the symble you've input!"<<endl;
}
system("pause");
}
程序运行正常。再输入20jpy时,输出
但是在输入10eur时候,发生了一件有趣的事情,起初以为自己代码有误,但是几经检查,代码没有问题。
后来苦思冥想之后,方才恍然大悟!原来在输入10eur的时候,计算机将10eur默认为10e ur,所以导致出错!
后来验证,将eur改为ur之后再次运行,一切正常!看来今后在一些细节上还是要多注意下!不过越发觉得编程很有趣了!坚持~~~~愿大家共乐!谢谢~~~
