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

C++输入输出(上)

cin和cout

cin是C++中提供的标准输入流对象,一般针对的是键盘,也就是从键盘上输入的字符流,使用
cin来进行数据的提取,cin一般是和 >> (流提取运算符) 配合使用的。
cin的功能和scanf是类似的

cout是C++中提供的标准输出流对象,一般针对的是控制台的窗口,也就是将数据以字符流的形式
输出到控制台窗口上显示。cout一般是和 << (流插入运算符) 配合使用。
cout的功能和printf是类似的
我们在写程序的时候,经常需要处理数据,不管什么类型的数据都是以字符流的形式输入和
输出的,也就是不管在键盘上输入什么类型的数据,还是将程序中的各种类型的数据输出显示
到控制台屏幕上,都是以字符流的形式处理的。

cout的格式输出

printf函数在输出数据的时候,可以指定格式来输出,比如:指定宽度、小数点后的位数、对齐方式等等
这些也可以用cout来实现,cout结合头文件iomanip中的操作符,可以灵活控制输出格式。

1.控制宽度和填充

setw : 设置字段宽度(只对紧接着的输出项有效)
setfill : 设置填充字符

#include <iostream>
using namespace std;
#include <iomanip>

int main()
{
	int a = 123;
	
	cout << "默认宽度: " << a << endl;
	cout << "宽度设置为10: " << setw(10) << a << endl;
	cout << "宽度为10,不够时填充*: " << setw(10) << setfill('*') << a << endl;

	return 0;
}

在这里插入图片描述

2.控制数值格式

fixed : 以固定小数点表示浮点数,设置后就不会以科学计数法展示了
scientific : 以科学计数法表示浮点数
setprecision : 设置浮点数的精度,以控制小数点后的数字位数,一般先固定小数点,再设置精度

#include <iostream>
using namespace std;
#include <iomanip>

int main()
{
	double pi = 3.141592653589793;
	
	cout << "默认: " << pi << endl;
	cout << "固定小数点方式: " << fixed << pi << endl;
	cout << "科学计数法方式: " << scientific << pi << endl;
	cout << "固定小数点,小数点后2位有效数字: " << fixed << setprecision(2) << pi << endl;

	return 0;
}

在这里插入图片描述

3.控制整数格式

dec : 以十进制格式显示整数(默认)
hex : 以十六进制格式显示整数
oct : 以八进制格式显示整数

#include <iostream>
using namespace std; 
#include <iomanip>

int main()
{
	int n = 255;
	
	cout << "十进制  : " << dec << n << endl;
	cout << "十六进制: " << hex << n << endl;
	cout << "八进制  : " << oct << n << endl; 
	
	return 0;
}

在这里插入图片描述

4.控制对齐方式

left : 左对齐
right : 右对齐(默认)

#include <iostream>
using namespace std; 
#include <iomanip>

int main()
{
	int n = 123;
	
	cout << "右对齐: " << setw(10) << right << n << endl;
	cout << "左对齐: " << setw(10) << left << n << endl;
	
	return 0;
}

在这里插入图片描述
请添加图片描述


http://www.kler.cn/a/532529.html

相关文章:

  • Leetcode922: 按奇偶排序数组 II
  • 尚硅谷课程【笔记】——大数据之Shell【一】
  • Vue3 完整学习笔记 - 第四部分
  • React+Cesium基础教程(003):加载3D建筑物和创建标签
  • 第 1 天:UE5 C++ 开发环境搭建,全流程指南
  • tomcat核心组件及原理概述
  • CSS --- 设置不自动换行
  • 代码随想录算法训练营第十七天| 二叉树5
  • Linux——文件与磁盘
  • 求组合数(递推法、乘法逆元、卢卡斯定理、分解质因数)
  • 介绍一下Mybatis的Executor执行器
  • springboot/ssm互联网智慧医院体检平台web健康体检管理系统Java代码编写
  • 【NLP百面百过】大模型算法面试高频面题(全面整理 ʘ‿ʘ)
  • Vue.js组件开发-实现全屏手风琴幻灯片切换特效
  • GESP6级语法知识(六):(动态规划算法(六)多重背包)
  • 爬虫学习笔记之Robots协议相关整理
  • C++模板编程——可变参类模板
  • IOS开发日志-ios新建项目后-将storyboard去掉,版本调整为IOS13以下
  • 关于算尽圆周率
  • 使用 Go 语言调用 DeepSeek API:完整指南
  • 泰山派Linux环境下自动烧录脚本(EMMC 2+16G)
  • 手写MVVM框架-模板渲染1
  • 什么是REStful API,其设计核心原则(core principle)是什么
  • 深入解析 Redis AOF 机制:持久化原理、重写优化与 COW 影响
  • MyBatis 初级
  • 基于SpringBoot的物资管理系统