C++中小数点输出格式(实例代码)

发布时间 - 2026-01-11 01:55:18    点击率:

在《算法竞赛入门经典》一书中

习题1-5 打折 (discount)

一件衣服95元,若消费满300元,可打八五折。输入购买衣服件数,输出需要支付的金额(单位:元),保留两位小数。

我编写的代码为

#include<iostream>
#include<iomanip>
using namespace std;
int main(void){
  double s;
  cin>>s;
  
  if(s*95>=300){
    cout<<setiosflags(ios::fixed)<<setprecision(2)<<s*95*0.85<<endl;
  } 
  
  else{
    cout<<setiosflags(ios::fixed)<<setprecision(2)<<s*95<<endl;
  }
  
  
  return 0;
}

于是将C++中如何显示不同格式的小数查了一下:

Floating point output can be changed with
<< setiosflags( ios::fixed ) : never use scientific notation //绝对不使用科学记数法。
<< setiosflags( ios::scientific ) : always use scientific notation //使用科学记数法。
<< resetiosflags( ios::floatfield ) : restores default (use fixed or scientific notation based on the precision)//重置为缺省。
<< (re)setiosflags( ios::showpoint ) : controls if the trailing zeros and decimal point will be output (default is no) //控制小数点后面的零是否显示。
<< setprecision( digits ) : if fixed or scientific format is selected, controls the number of digits after the decimal place, otherwise controls the total number of significant digits// 如果fixed或者scientific已经确定了,则控制小数点后面的位数;否则,控制所有位数。
#include <iostream>
#include <iomanip>
using namespace std;

int main(void){
  double S = 0.000000123;
  double A = 456.7;
  double B = 8910000000000.0;

  cout << "default precision is "
     << cout.precision() << endl;  // 6

  cout << "  S = " << S << endl;  // 1.23e-07
  cout << "  A = " << A << endl;  // 456.7
  cout << "  B = " << B << endl;  // 8.91e+12

  cout << setiosflags(ios::showpoint)
     << "ios::showpoint ON" << endl;

  cout << "  S = " << S << endl;  // 1.23000e-07
  cout << "  A = " << A << endl;  // 456.700
  cout << "  B = " << B << endl;  // 8.91000e+12

  cout << resetiosflags(ios::showpoint)
     << "ios::showpoint OFF" << endl;
  cout << setiosflags(ios::fixed)
     << "ios::fixed ON" << endl;

  cout << "  S = " << S << endl;  // 0.000000
  cout << "  A = " << A << endl;  // 456.700000
  cout << "  B = " << B << endl;  // 8910000000000.000000

  cout << resetiosflags(ios::fixed)
     << setiosflags(ios::scientific)
     << "ios::scientific ON" << endl;

  cout << "  S = " << S << endl;  // 1.230000e-07
  cout << "  A = " << A << endl;  // 4.567000e+02
  cout << "  B = " << B << endl;  // 8.910000e+12
}

输出为:

default precision is 6
S = 1.23e-007
A = 456.7
B = 8.91e+012
ios::showpoint ON
S = 1.23000e-007
A = 456.700
B = 8.91000e+012
ios::showpoint OFF
ios::fixed ON
S = 0.000000
A = 456.700000
B = 8910000000000.000000
ios::scientific ON
S = 1.230000e-007
A = 4.567000e+002
B = 8.910000e+012

--------------------------------

Process exited after 0.02482 seconds with return value 0

请按任意键继续. . .

以上这篇C++中小数点输出格式(实例代码)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。


# c  # 输出格式  # C++详解使用floor&ceil&round实现保留小数点后两位  # C++编程中的格式化输出详解  # C++输出问题:保留两位小数  # 给大家  # 两位  # 希望能  # 绝对不  # 这篇  # 请按  # 小编  # 大家多多  # 一书中  # 可打  # 确定了  # 八五折  # void  # main  # cin  # double  # cout  # iomanip  # ios  # namespace 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: nginx修改上传文件大小限制的方法  微信小程序 wx.uploadFile无法上传解决办法  php做exe能调用系统命令吗_执行cmd指令实现方式【详解】  Laravel如何实现邮件验证激活账户_Laravel内置MustVerifyEmail接口配置【步骤】  Laravel如何使用集合(Collections)进行数据处理_Laravel Collection常用方法与技巧  Laravel Eloquent:优雅地将关联模型字段扁平化到主模型中  如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南  如何在 React 中条件性地遍历数组并渲染元素  Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】  网站建设整体流程解析,建站其实很容易!  Laravel Admin后台管理框架推荐_Laravel快速开发后台工具  JavaScript实现Fly Bird小游戏  高端网站建设与定制开发一站式解决方案 中企动力  Laravel如何创建和注册中间件_Laravel中间件编写与应用流程  Laravel Livewire是什么_使用Laravel Livewire构建动态前端界面  香港服务器网站生成指南:免费资源整合与高速稳定配置方案  简单实现Android文件上传  香港网站服务器数量如何影响SEO优化效果?  Microsoft Edge如何解决网页加载问题 Edge浏览器加载问题修复  PHP 500报错的快速解决方法  如何快速生成ASP一键建站模板并优化安全性?  今日头条AI怎样推荐抢票工具_今日头条AI抢票工具推荐算法与筛选【技巧】  黑客如何通过漏洞一步步攻陷网站服务器?  如何破解联通资金短缺导致的基站建设难题?  免费网站制作appp,免费制作app哪个平台好?  Laravel Seeder填充数据教程_Laravel模型工厂Factory使用  Laravel如何处理CORS跨域请求?(配置示例)  青岛网站建设如何选择本地服务器?  Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程  Laravel队列任务超时怎么办_Laravel Queue Timeout设置详解  移动端脚本框架Hammer.js  活动邀请函制作网站有哪些,活动邀请函文案?  Gemini怎么用新功能实时问答_Gemini实时问答使用【步骤】  如何构建满足综合性能需求的优质建站方案?  html5的keygen标签为什么废弃_替代方案说明【解答】  Chrome浏览器标签页分组怎么用_谷歌浏览器整理标签页技巧【效率】  如何有效防御Web建站篡改攻击?  如何快速搭建高效简练网站?  浅述节点的创建及常见功能的实现  Win11怎么查看显卡温度 Win11任务管理器查看GPU温度【技巧】  Laravel如何监控和管理失败的队列任务_Laravel失败任务处理与监控  如何在Ubuntu系统下快速搭建WordPress个人网站?  如何挑选高效建站主机与优质域名?  Laravel如何处理表单验证?(Requests代码示例)  网站页面设计需要考虑到这些问题  家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?  Laravel怎么创建自己的包(Package)_Laravel扩展包开发入门到发布  Laravel如何实现事件和监听器?(Event & Listener实战)  如何确保FTP站点访问权限与数据传输安全?  香港服务器如何优化才能显著提升网站加载速度?