前言:
现时你们对“cout 小数位数”都比较关心,看官们都想要学习一些“cout 小数位数”的相关文章。那么小编在网上搜集了一些有关“cout 小数位数””的相关知识,希望姐妹们能喜欢,同学们快快来学习一下吧!青少年编程C++:《计算分数的浮点数值》。
计算分数的浮点数值,输入两个整数a和b,分别作为分子和分母,即分数b分之a求它的浮点数值。双精度浮点数要求保留小数点后9位。
·我们来看一下,输入仅一行,就是这两个整数a和b,输出也仅一行分数b分之a的浮点数值,括号双精度浮点数,保留小数点后9位。这里有样例输入57,求出来该分数5/7的浮点数值,就是0.714285714,保留小数点后9位。
这道题考察的知识点有两个,一个是强制类型转换,另外一个是保留小数位数。我们知道,一个整数和另外一个整数进行运算的时候,加减乘除,得到的结果应该是整数。如何得到双精度浮点数的小数?这里就可以需要做一个强制类型转换。
·第一种方法采用的是格式化输入输出,头文件cstdio,然后scanf,通过两个%d去得到a和b两个整数的值。接下来用printf去输出,在输出的时候,需要去计算a除以b的浮点数值,所以这里做了一个强制类型转换。
在a前面用括号把double放进去,这样就把a整数转化成双精度浮点数,所以它们的相除的结果,也应该是双精度浮点数。这里输出的时候,用%.9lf,这样来进行保留9位小数,输出双精度浮点数这样的操作。
进行编译,然后运行起来,输入样例57,回车。这个时候看到输入结果0.714285714,和题目的要求一样。
·我们再看一下第二种方法,第二种方法是采用的iomanip这个头文件,因为会用到fixed和setprecision来保留小数位数,采用的是cout,来输入a和b两个数,然后用cout,在scout后面跟上fixed和setprecision,括号9表示保留9位的小数。
在这个里面输出的项目还是用强制类型转换,将a转化成double类型,进行除法运算之后得到的也是double类型。这个程序的执行就略过,同学们可以自己尝试一下。
这道题就到这里。
标签: #cout 小数位数