C++——百分率

百分率

需求如下:

 

 代码如下:

    方法一

 1 #include <iostream>
 2 #include <cmath>  //引入库函数
 3 using namespace std;
 4 int main()
 5 {
 6     double a;
 7     cin>>a;
 8     double b=round(a*100);  //使用cmath库中的round函数对数进行四舍五入
 9     cout<<b<<"%"<<endl;
10     return 0;
11 }

 

    方法二

 1 #include <iostream>
 2 #include <math.h>  //通过代码的调试,把这行注释掉也是可以的,暂时没有发现有什么不一样的
 3 using namespace std;
 4 int main()
 5 {
 6     float a,b;
 7     cin>>a;
 8     b=int(a*100+0.5)/1;//保留两位小数,自动四舍五入; 这里除以1是为了进行类型转换 加0.5的作用是为了精度
 9     cout<<b<<"%"<<endl;
10     return 0;
11 }

 

分析与总结:

  1、C++中的<math>和<cmath>有什么区别?

    math.h是C语言的头文件。其实在C++中用math.h也是可以的,C++是兼容C的。不过推荐的是使用#include <cmath>,不过这样必须声明在std命名空间:using namespace std;  其中的函数和使用方法几乎完全相同。

  2、方法一和方法二比较:方法一虽然简单,但是它调用了函数,应该占的资源,时间什么的比较多点;方法二正好与方法一相反,它的过程看似复杂,难以理解,但是没有调用什么函数,应该是比第一好的。

 

写在最后:

  哪里有不足或者错误的地方,欢迎小伙伴们进行指教,一起进步哦!

posted @ 2020-09-08 21:22  闫佳杰  阅读(4208)  评论(2)    收藏  举报