码迷,mamicode.com
首页 > 其他好文 > 详细

cout格式化输出

时间:2016-09-22 01:14:28      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:

问题描述:

  有N条绳子, 它们的长度分别为Li. 如果从它们中切割出K条相同的绳子的话,这K条绳子每条最长能有多少?

  (备注:答案保留两位小数)

<1>精确到小数点后两位输出

#include <iostream>
#include <vector>
#include <iomanip>
using namespace std;
int getDiv(vector<int> li, int max){
	int ans =0;
	for(int i=0;i<li.size();++i){
		ans+=li[i]%max;
	}
	return ans;
}
int main(){
	int N,K,temp,max,sum=0;
	vector<int> li;
	cin>>N>>K;
	for(int i=0;i<N;++i){
		float t; cin>>t;
		temp = (int)(t*100);
		sum+=temp;
		li.push_back(temp);
	}
	max = sum/K;
	while(max*K+getDiv(li,max)>sum){
		max--;
	}
	cout.setf(ios::fixed); //按点输出显示 
	cout<<setprecision(2)<<max/100.<<endl;
	return 0;
}

<2>运行结果

  技术分享

总结

  设置小数点后精确到n位,需要引入头文件/setf(ios::fixed)/setprecision(n) 即可!

  #include <iomanip>

  cout.setf(ios::fixed); //按点输出显示 

  cout<<setprecision(2)<<max/100.<<endl;

cout格式化输出

标签:

原文地址:http://www.cnblogs.com/AbcFly/p/5894553.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!