Cout输出应用举例

Cout输出应用

在main.cpp里输入程序如下:

#include <iostream>  //使能cin(),cout();

#include <stdlib.h>  //使能exit();

#include <sstream>

 

#include <iomanip>   //使能setbase(),setfill(),setw(),setprecision(),setiosflags()和resetiosflags();

//setbase( char x )是设置输出数字的基数,如输出进制数则用setbase(8);如输出进制数则用setbase(10);如输出进制数则用setbase(16);

//setbase( char x )的参数x只能是,10和,其它参数无效,setbase对其后的cout都有影响;

 

//当程序需要在屏幕上显示输出时,可以使用插入操作符“<<”向cout输出流中插入字符;

//例如: cout<<"I love C++\n";

//当程序需要执行键盘输入时,可以使用抽取操作符“>>”从cin输人流中抽取字符;

//例如: int myAge;   cin>>myAge;

//I/O流的常用控制符如下:

//dec  置基数为;

//hex  置基数为;

//oct  置基数为;

//left   左对齐

//right  右对齐

//setiosflags(ios::left)           左对齐,left位于ios文件中

//setiosflags(ios::right)          右对齐,right位于ios文件中

//setiosflags(ios::uppercase)      控制进制数大写输出

//resetiosflags(ios::uppercase)    控制进制数小写输出

 

//setfill(c)                       没填充字符为c,对其后的cout都有影响;

//setw(n)                          设置值的输出宽度为n个字符,仅仅影响下一个数值输出;

 

//setiosflags(ios::showpos)        强制显示正负号,对于浮点数和十进制数,正数将显示+;

 

//setiosflags(ios::fixed)          固定以小数方式显示

//setiosflags(ios::showpoint)      若只有整数部分,则强制显示小数点;

//setprecision(n)                  设置浮点数小数点后有n位小数;

 

//setiosflags(ios::scientific)     指数表示;

 

 

//注意:在使用setiosflags()之后,一定要使用resetiosflags(()恢复到默认设置;否则,会出现意想不到的错误;

//例如:在cout<<setiosflags(ios::fixed)被使用完后,要调用cout<<resetiosflags(ios::fixed)恢复到默认设置;

//注意:cout<<setiosflags(ios::lowercase);  //控制进制数小写输出,在Visual studio C++2005中,不支持该语句;

 

//在不使用#include<iomanip>时,cout.setf(ios::right); //设置为右对齐输出;

 

//浮点数默认显示位有效位;

using namespace std; //告诉编译器使用std标准程序库;

int main()

{

    cout<<"设置浮点数的有效位数\n";

    double float_value=220.0/7;

    cout<<setiosflags(ios::fixed);     //固定以小数方式显示

    cout<<setiosflags(ios::showpoint); //若只有整数部分,则强制显示小数点;

    cout<<"浮点数默认显示: "<<float_value<<endl;  //浮点数默认显示,小数点后面有位小数;

    cout<<"浮点数显示位小数: "<<setprecision(1)<<float_value<<endl;

    cout<<"浮点数不显示小数: "<<setprecision(0)<<float_value<<endl;

    cout<<"浮点数显示位小数: "<<setprecision(2)<<float_value<<endl;

    cout<<"浮点数显示位小数: "<<setprecision(3)<<float_value<<endl;

    cout<<"浮点数显示位小数"<<setprecision(8)<<float_value<<endl;

    cout<<resetiosflags(ios::fixed);     //不再固定以小数方式显示

    cout<<resetiosflags(ios::showpoint); //若只有整数部分,则强制显示小数点;

 

    cout<<"\n设置强制显示正负号\n";

    cout<<setiosflags(ios::showpos);   //强制显示正负号;

    cout<<setiosflags(ios::fixed);     //固定以小数方式显示

    cout<<setiosflags(ios::showpoint); //若只有整数部分,则强制显示小数点;

    cout<<"浮点数显示位小数"<<setprecision(8)<<float_value<<endl;

    cout<<resetiosflags(ios::fixed);     //不再固定以小数方式显示

    cout<<resetiosflags(ios::showpoint); //若只有整数部分,则强制显示小数点;

    cout<<resetiosflags(ios::showpos);  //不强制显示正负号;

    cout<<"设置不强制显示正负号\n\n";

 

    cout<<"浮点数用科学计数法表示: ";

    cout<<setiosflags(ios::scientific);

    cout<<float_value<<endl;

    cout<<resetiosflags(ios::scientific);     //不再用科学计数法表示;

 

    cout<<"\n设置用小数方式显示\n";

    double f1,f2,f3;

    f1=1;

    f2=12;

    f3=101.1234;

    cout<<setiosflags(ios::fixed);     //固定以小数方式显示

    cout<<setiosflags(ios::showpoint); //若只有整数部分,则强制显示小数点;

    cout<<setprecision(8);             //浮点数只有位有效值

    cout<<"f1= "<<f1<<endl;

    cout<<"f2= "<<f2<<endl;

    cout<<"f3= "<<f3<<endl;

    cout<<setprecision(1);             //浮点数只有位有效值

    cout<<"f3= "<<f3<<endl;

    cout<<resetiosflags(ios::fixed);     //不再固定以小数方式显示

    cout<<resetiosflags(ios::showpoint); //若只有整数部分,则强制显示小数点;

 

    cout<<"\n测试左右输出对齐\n";

    int i;

    //cout.setf(ios::right); //设置为右对齐输出;

    cout<<setiosflags(ios::right);  //设置为右对齐输出;

    //cout<<right;  //设置为左对齐输出;

    for(i=8;i<13;i++)

    {

       cout<<setw(5);        //设域宽为个字符;

        cout<<setfill('*');   //填充字符为*;

       cout<<i;

       if(i==12) cout<<endl;

    }

    cout<<resetiosflags(ios::right);  //恢复默认设置;

 

       //cout.setf(ios::left); //设置为左对齐输出;

    cout<<setiosflags(ios::left);  //设置为左对齐输出;

    //cout<<left;  //设置为左对齐输出;

    for(i=8;i<13;i++)

    {

       cout<<setw(5);

        cout<<setfill('*');

       cout<<i;

       if(i==12) cout<<endl;

    }

    cout<<setiosflags(ios::left);  //恢复默认设置,设置为左对齐输出;

    cout<<setw(0); //恢复默认设置

 

    cout<<"\n按照进制数显示:\n";

    for(i=8;i<13;i++)

    {  

       cout<<dec;   //设置为进制输出;

       cout<<"  "<<i;

    }

    cout<<"\n按照进制数显示:\n";

    for(i=8;i<13;i++)

    {

       cout<<hex;   //设置为进制输出;

       cout<<"  "<<i;

    }

    cout<<"\n按照进制数显示:\n";

    for(i=8;i<13;i++)

    {

       cout<<oct; //设置为进制输出;

       cout<<"  "<<i;

    }

 

    cout<<"\n控制进制数小写输出:\n";

    //cout<<setiosflags(ios::lowercase);  //在Visual studio C++2005中,不支持该语句;

    cout<<resetiosflags(ios::uppercase);  //恢复默认设置,16进制小写字母输出;

    for(i=8;i<13;i++)

    {

       cout<<hex<<"  "<<i;

    }

    cout<<"\n控制进制数大写输出:\n";

    cout<<setiosflags(ios::uppercase);  //控制进制数大写输出

    for(i=8;i<13;i++)

    {

       cout<<hex<<"  "<<i;

    }

    cout<<resetiosflags(ios::uppercase);  //恢复默认设置,16进制小写字母输出;

 

    cout<<"\nskipws忽略空白输出:\n";

    istringstream cstr(" 1 2 3 4 5 6 7 8 9");

    char a;

    cstr>>skipws;  //跳过空格输入;

    for(i=0;i<9;i++)

    { cstr>>a;

      cout << a;

      if(a=='9') cout << endl;

    }

    system("pause");  //程序暂停,按任意键继续执行;

    cout<<"\nskipws不忽略空白输出:\n";

    cstr.seekg(0);           //seekg设置获取指针的位置为起始位置;

    cstr>>noskipws;  //不跳过空格输入;

    for(i=0;i<18;i++)

    { cstr>>a;

      cout << a;

      if(a=='9') cout << endl;

    }

    return(0); //退出函数;

}

 

 

//参考:http://www.cplusplus.com/reference/iostream/istringstream/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/456909.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Unity2D 人物爬楼梯

unity3d 中 实现 2d角色爬梯子功能。_哔哩哔哩_bilibiliunity3d 中 实现 2d角色爬梯子功能。, 视频播放量 2598、弹幕量 3、点赞数 28、投硬币枚数 18、收藏人数 83、转发人数 19, 视频作者 Fss1975, 作者简介 &#xff0c;相关视频&#xff1a;寻路算法 在unity3d 中的演示&am…

05方差分析续

文章目录 1.Three way ANOVA2.Latin square design2.Hierarchical (nested) ANOVA3.Split-plot ANOVA4.Repeated measures ANOVA5.Mixed effect models 1.Three way ANOVA 三因素相关分析 单因子分析的代码 data(mtcars) nrow(mtcars) # 32 mtcars$cyl as.factor(mtcars$cyl…

【永中软件-注册/登录安全分析报告】

前言 由于网站注册入口容易被黑客攻击&#xff0c;存在如下安全问题&#xff1a; 暴力破解密码&#xff0c;造成用户信息泄露短信盗刷的安全问题&#xff0c;影响业务及导致用户投诉带来经济损失&#xff0c;尤其是后付费客户&#xff0c;风险巨大&#xff0c;造成亏损无底洞…

spring整合使用xml方式整合Druid数据源连接池

1.普通的JDBC数据库连接使用 DriverManager 来获取&#xff0c;每次向数据库建立连接的时候都要将 Connection加载到内存中&#xff0c;再验证用户名和密码(得花费0.05s&#xff5e;1s的时间)。需要数据库连接的时候&#xff0c;就向数据库要求 一个&#xff0c;执行完成后再断…

【微服务】Java 对接飞书多维表格使用详解

目录 一、前言 二、前置操作 2.1 开通企业飞书账户 2.2 确保账户具备多维表操作权限 2.3 创建一张测试用的多维表 2.4 获取飞书开放平台文档 2.5 获取Java SDK 三、应用App相关操作 3.1 创建应用过程 3.2 应用发布过程 3.3 应用添加操作权限 四、多维表应用授权操作…

语音识别——使用Vosk进行语音识别

文章目录 前言一、Vosk模型1.准备好所需要的语音包2.下载使用 二、使用示例1.文件读取示例2.结合麦克风演示 总结 前言 如何编译Vosk请参照之前的文章&#xff0c;ubuntu编译kaldi和vosk Vosk是语音识别开源框架&#xff0c;支持二十种语言 - 中文&#xff0c;英语&#xff0…

使用Prometheus对微服务性能自定义指标监控

背景 随着云计算和容器化技术的不断发展&#xff0c;微服务架构逐渐成为现代软件开发的主流趋势。微服务架构将大型应用程序拆分成多个小型、独立的服务&#xff0c;每个服务都可以独立开发、部署和扩展。这种架构模式提高了系统的可伸缩性、灵活性和可靠性&#xff0c;但同时…

大数据-190 Elasticsearch - ELK 日志分析实战 - 配置启动 Filebeat Logstash

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; 目前已经更新到了&#xff1a; Hadoop&#xff08;已更完&#xff09;HDFS&#xff08;已更完&#xff09;MapReduce&#xff08;已更完&am…

语音语言模型最新综述! 关于GPT-4o背后技术的尝试

近期,大型语言模型(LLMs)在生成文本和执行各种自然语言处理任务方面展现出了卓越的能力,成为了强大的AI驱动语言理解和生成的基础模型。然而&#xff0c;仅依赖于基于文本模态的模型存在显著局限性。这促使了基于语音的生成模型的发展,使其能够更自然、直观地与人类互动。 为了…

任务看板是什么?如何选择合适的任务看板工具?

一、任务看板是什么&#xff1f; 任务看板是一种可视化的项目管理工具&#xff0c;它通常以板状的形式呈现&#xff0c;将任务以卡片的形式展示在不同的列中&#xff0c;每一列代表任务的不同状态。例如&#xff0c;待办事项、进行中、已完成等。任务看板能够帮助团队成员清晰…

Linux: network: wireshark IO图的一个问题

今天遇到一个问题&#xff0c;发现wireshark画的IO图&#xff0c;前几秒没有数据&#xff0c;但是根据Raw的pcap看&#xff0c;是有包的&#xff0c;这就迷惑了。 经同事提醒&#xff0c;这个IO在设置了多个画图filter的时候&#xff0c;可能导致开始前几秒没有输出。如下图 这…

LLM | 论文精读 | 基于大型语言模型的自主代理综述

论文标题&#xff1a;A Survey on Large Language Model based Autonomous Agents 作者&#xff1a;Lei Wang, Chen Ma, Xueyang Feng, 等 期刊&#xff1a;Frontiers of Computer Science, 2024 DOI&#xff1a;10.1007/s11704-024-40231-1 一、引言 自主代理&#xff08;…

找不到包的老版本???scikit-learn,numpy,scipy等等!!

废话不多说 直接上链接了&#xff1a; https://pypi.tuna.tsinghua.edu.cn/simple/https://pypi.tuna.tsinghua.edu.cn/simple/https://pypi.tuna.tsinghua.edu.cn/simple/xxx/ 后面的这个xxx就是包的名字 大家需要什么包的版本&#xff0c;直接输进去就可以啦 举个栗子&#…

关于Docker的docker engine stopped问题解决

问题图: 主要检查这两块 启用或关闭Windows功能如下图&#xff08;将没开启的开启特别是Hyper-V&#xff0c;Linux&#xff0c;虚拟机等&#xff09;&#xff1a; 然后打开任务管理器搜索Docker service将关闭状态打开 运行管理员CMD执行如下命令 重启&#xff01;&#xff01…

ClickHouse在百度MEG数据中台的落地和优化

导读 百度MEG上一代大数据产品存在平台分散、质量不均和易用性差等问题&#xff0c;导致开发效率低下、学习成本高&#xff0c;业务需求响应迟缓。为了解决这些问题&#xff0c;百度MEG内部开发了图灵3.0生态系统&#xff0c;包括Turing Data Engine(TDE)计算引擎、Turing Dat…

个性化头像新选择:A1快速定制你的专属头像

个性化头像是彰显个人特色的绝佳方式&#xff0c;许多人为了表达自我&#xff0c;都会选择定制专属头像。然而&#xff0c;传统的定制头像服务往往价格不菲&#xff0c;且效果难以预测。幸运的是&#xff0c;AI绘画技术的发展为这一问题提供了解决方案。尽管许多AI绘画平台需要…

useEffect简单介绍

react组件生命周期 比如说&#xff0c;某些操作就只在初始渲染后执行&#xff0c;我们就可以使用useEffect。 useEffect(function () {fetch(http://www.omdbapi.com/?apikey${KEY}&sinterstellar).then((res) > res.json()).then((data) > setMovies(data.Search)…

fpga系列 HDL: 竞争和冒险 01

卡诺图是一种逻辑化简工具&#xff0c;用来在布尔函数的最小项和形式中&#xff0c;找到冗余项并实现逻辑化简。也可用于HDL中竞争和冒险的判断。 最小项 任何一个逻辑函数都能化简为最小项的和的形式对于 n 个变量的布尔表达式&#xff0c;每个变量都必须以原变量&#xff0…

Pyramidal Flow使用指南:快手、北大、北邮,开源可免费商用视频生成模型,快速上手教程

什么是 Pyramidal Flow&#xff1f; Pyramidal Flow 是由快手科技、北京大学和北京邮电大学联合推出的开源视频生成模型&#xff0c;它是完全开源的&#xff0c;发布在 MIT 许可证下&#xff0c;允许商业使用、修改和再分发。该模型能够通过文本描述生成最高10秒、分辨率为128…

10分钟使用Strapi(无头CMS)生成基于Node.js的API接口,告别繁琐开发,保姆级教程,持续更新中。

一、什么是Strapi&#xff1f; Strapi 是一个开源的无头&#xff08;headless&#xff09; CMS&#xff0c;开发者可以自由选择他们喜欢的开发工具和框架&#xff0c;内容编辑人员使用自有的应用程序来管理和分发他们的内容。得益于插件系统&#xff0c;Strapi 是一个灵活的 C…