当前位置: 首页 > news >正文

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/

相关文章:

Cout输出应用举例

Cout输出应用 在main.cpp里输入程序如下&#xff1a; #include <iostream> //使能cin(),cout(); #include <stdlib.h> //使能exit(); #include <sstream> #include <iomanip> //使能setbase(),setfill(),setw(),setprecision(),setiosflags()和res…...

java的无锁编程和锁机制

Java 的并发编程中&#xff0c;为了保证线程安全和高性能&#xff0c;采用了两种主要的同步手段&#xff1a;锁机制和无锁编程。以下是对锁机制、无锁编程、死锁及其避免的详细讲解。 一、无锁编程 无锁编程通过原子操作来避免传统锁&#xff0c;从而减少线程的上下文切换&am…...

vue实现富文本编辑器上传(粘贴)图片 + 文字

vue实现富文本编辑器上传&#xff08;粘贴&#xff09;图片 文字 1.安装插件 npm install vue-quill-editor -s2.在使用vue-quill-editor富文本的时候&#xff0c;对于图片的处理经常是将图片转换成base64&#xff0c;再上传数据库&#xff0c;但是base64不好存储。 原理&a…...

子集和全排列(深度优先遍历)问题

欢迎访问杀马特主页&#xff1a;小小杀马特主页呀&#xff01; 目录 前言&#xff1a; 例题一全排列&#xff1a; 1.题目介绍&#xff1a; 2.思路汇总&#xff1a; 3.代码解答&#xff1a; 例题二子集&#xff1a; 题目叙述&#xff1a; 解法一&#xff1a; 1.思路汇总…...

判断检测框是否在感兴趣区域(ROI)内

判断检测框是否在感兴趣区域&#xff08;ROI&#xff09;内 在计算机视觉和图像处理中&#xff0c;我们经常需要确定一个矩形检测框是否位于一个特定的感兴趣区域&#xff08;Region of Interest, ROI&#xff09;内。这个ROI可以是一个多边形&#xff0c;而检测框则是一个矩形…...

正点原子阿尔法ARM开发板-IMX6ULL(九)——关于SecureCRT连接板子上的ubuntu

文章目录 一、拨码器二、SecureCRT 一、拨码器 emmm,也是好久没学IMX6ULL了&#xff0c;也是忘了拨码器决定了主板的启动方式 一种是直接从TF卡中读取文件&#xff08;注意这里是通过imdownload软件编译好了之后&#xff0c;通过指令放入TF卡&#xff09; 一种是现在这种用串口…...

微信支付Java+uniapp微信小程序

JS&#xff1a; request.post(/vip/pay, {//这是自己写的java支付接口id: this.vipInfo.id,payWay: wechat-mini}).then((res) > {let success (res2) > {//前端的支付成功回调函数this.$refs.popup.close();// 支付成功刷新当前页面setTimeout(() > {this.doGetVipI…...

【NOIP提高组】加分二叉树

【NOIP提高组】加分二叉树 &#x1f490;The Begin&#x1f490;点点关注&#xff0c;收藏不迷路&#x1f490; 设一个n个节点的二叉树tree的中序遍历为&#xff08;l,2,3,…,n&#xff09;&#xff0c;其中数字1,2,3,…,n为节点编号。每个节点都有一个分数&#xff08;均为正整…...

HarmonyOS 相对布局(RelativeContainer)

1. HarmonyOS 相对布局&#xff08;RelativeContainer&#xff09; 文档中心:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/arkts-layout-development-relative-layout-V5   RelativeContainer为采用相对布局的容器&#xff0c;支持容器内部的子元素设…...

webpack5搭建react脚手架详细步骤

1. 初始化项目 首先&#xff0c;创建一个新目录并初始化项目&#xff1a; bash mkdir create-react cd create-react pnpm init --y git init 这里使用pnpm作为包管理工具&#xff0c;因为它在处理依赖和速度上表现更好。 2. 安装React和TypeScript 安装React和React-DOM…...

速盾:高防cdn怎么拦截恶意ip?

高防CDN&#xff08;Content Delivery Network&#xff09;是一种用于防御网络攻击和提供高可用性的服务。它通过分发网络流量&#xff0c;将用户的请求导向最近的服务器&#xff0c;从而提高网站的加载速度和稳定性。然而&#xff0c;不可避免地&#xff0c;有些恶意IP地址会试…...

太阳能面板分割系统:训练自动化

太阳能面板分割系统源码&#xff06;数据集分享 [yolov8-seg-EfficientHead&#xff06;yolov8-seg-vanillanet等50全套改进创新点发刊_一键训练教程_Web前端展示] 1.研究背景与意义 项目参考ILSVRC ImageNet Large Scale Visual Recognition Challenge 项目来源AAAI Globa…...

C++笔记---位图

1. 位图的概念 位图&#xff08;Bitmap&#xff09;是一种基于位操作的数据结构&#xff0c;用于表示一组元素的集合信息。它通常是一个仅包含0和1的数组&#xff0c;每个元素对应一个二进制位&#xff0c;若该元素存在&#xff0c;则对应的位为1&#xff1b;若不存在&#xff…...

ABC370

## A - Raise Both Hands &#xff08;模拟&#xff09; 题意&#xff1a;输入l&#xff0c;r&#xff0c;如果l1r0输出yes&#xff0c;l0r1输出no&#xff0c;否则输出Invalid 代码&#xff1a; #include<bits/stdc.h> using namespace std; typedef long long ll; vo…...

C语言[求x的y次方]

C语言——求x的y次方 这段 C 代码的目的是从用户输入获取两个整数 x 和 y &#xff0c;然后计算 x 的 y 次幂&#xff08;不过这里有个小错误&#xff0c;实际计算的是 x 的 (y - 1) 次幂&#xff0c;后面会详细说&#xff09;&#xff0c;最后输出结果。 代码如下: #include…...

JavaScript part2

一.前言 前面我们讲了一下js的基础语法&#xff0c;但是这些还是远远不够的&#xff0c;我们要想操作标签&#xff0c;实现一个动态且好看的页面&#xff0c;就得学会BOM和DOM&#xff0c;这些都是浏览器和页面的&#xff0c;这样我们才能实现一个好看的页面 二.BOM对象 BOM…...

HarmonyOS开发 - 本地持久化之实现LocalStorage实例

用户首选项为应用提供Key-Value键值型的数据处理能力&#xff0c;支持应用持久化轻量级数据&#xff0c;并对其修改和查询。数据存储形式为键值对&#xff0c;键的类型为字符串型&#xff0c;值的存储数据类型包括数字型、字符型、布尔型以及这3种类型的数组类型。 说明&#x…...

【C++打怪之路Lv12】-- 模板进阶

#1024程序员节&#xff5c;征文# &#x1f308; 个人主页&#xff1a;白子寰 &#x1f525; 分类专栏&#xff1a;重生之我在学Linux&#xff0c;C打怪之路&#xff0c;python从入门到精通&#xff0c;数据结构&#xff0c;C语言&#xff0c;C语言题集&#x1f448; 希望得到您…...

第23周Java主流框架入门-SpringMVC 2.RESTful开发风格

课程笔记&#xff1a;RESTful 开发风格 课程介绍 本节课程介绍 RESTful 开发风格&#xff0c;以及如何在 Spring MVC 中应用这种开发模式。传统 MVC 开发通过 Servlet、JSP 和 Java Bean 实现前后端交互&#xff0c;而 RESTful 开发提供了一种新的理念&#xff0c;更适合现代…...

QT枚举类型转字符串和使用QDebug<<重载输出私有枚举类型

一 将QT自带的枚举类型转换为QString 需要的头文件&#xff1a; #include <QMetaObject> #include <QMetaEnum> 测试代码 const QMetaObject *metaObject &QImage::staticMetaObject;QMetaEnum metaEnum metaObject->enumerator(metaObject->indexOf…...

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…...

【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器

一.自适应梯度算法Adagrad概述 Adagrad&#xff08;Adaptive Gradient Algorithm&#xff09;是一种自适应学习率的优化算法&#xff0c;由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率&#xff0c;适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...

pam_env.so模块配置解析

在PAM&#xff08;Pluggable Authentication Modules&#xff09;配置中&#xff0c; /etc/pam.d/su 文件相关配置含义如下&#xff1a; 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块&#xff0c;负责验证用户身份&am…...

Map相关知识

数据结构 二叉树 二叉树&#xff0c;顾名思义&#xff0c;每个节点最多有两个“叉”&#xff0c;也就是两个子节点&#xff0c;分别是左子 节点和右子节点。不过&#xff0c;二叉树并不要求每个节点都有两个子节点&#xff0c;有的节点只 有左子节点&#xff0c;有的节点只有…...

华硕a豆14 Air香氛版,美学与科技的馨香融合

在快节奏的现代生活中&#xff0c;我们渴望一个能激发创想、愉悦感官的工作与生活伙伴&#xff0c;它不仅是冰冷的科技工具&#xff0c;更能触动我们内心深处的细腻情感。正是在这样的期许下&#xff0c;华硕a豆14 Air香氛版翩然而至&#xff0c;它以一种前所未有的方式&#x…...

JavaScript 数据类型详解

JavaScript 数据类型详解 JavaScript 数据类型分为 原始类型&#xff08;Primitive&#xff09; 和 对象类型&#xff08;Object&#xff09; 两大类&#xff0c;共 8 种&#xff08;ES11&#xff09;&#xff1a; 一、原始类型&#xff08;7种&#xff09; 1. undefined 定…...

Go语言多线程问题

打印零与奇偶数&#xff08;leetcode 1116&#xff09; 方法1&#xff1a;使用互斥锁和条件变量 package mainimport ("fmt""sync" )type ZeroEvenOdd struct {n intzeroMutex sync.MutexevenMutex sync.MutexoddMutex sync.Mutexcurrent int…...

Git常用命令完全指南:从入门到精通

Git常用命令完全指南&#xff1a;从入门到精通 一、基础配置命令 1. 用户信息配置 # 设置全局用户名 git config --global user.name "你的名字"# 设置全局邮箱 git config --global user.email "你的邮箱example.com"# 查看所有配置 git config --list…...

「全栈技术解析」推客小程序系统开发:从架构设计到裂变增长的完整解决方案

在移动互联网营销竞争白热化的当下&#xff0c;推客小程序系统凭借其裂变传播、精准营销等特性&#xff0c;成为企业抢占市场的利器。本文将深度解析推客小程序系统开发的核心技术与实现路径&#xff0c;助力开发者打造具有市场竞争力的营销工具。​ 一、系统核心功能架构&…...

水泥厂自动化升级利器:Devicenet转Modbus rtu协议转换网关

在水泥厂的生产流程中&#xff0c;工业自动化网关起着至关重要的作用&#xff0c;尤其是JH-DVN-RTU疆鸿智能Devicenet转Modbus rtu协议转换网关&#xff0c;为水泥厂实现高效生产与精准控制提供了有力支持。 水泥厂设备众多&#xff0c;其中不少设备采用Devicenet协议。Devicen…...