算法知识点——常用输入输出数据的方式

如果输入的每组数据的结果不相互干扰的话,就可以在本次操作的时候将该组数据的相关结果进行输出。

1、n组输入输出(n确定)

c 复制代码
scanf("%d",&n);
while(n--) {scanf("%d %d",&a,&b); printf("%d %d\n",a,b);}
cpp 复制代码
cin>>n; 
while(n--){ cin >> a >> b; cout <<a << b << endl;;}

2、n组输入输出(n不确定)

c 复制代码
while(scanf("%d %d",&a,&b)!=EOF){printf("%d %d\n",a,b);}//第一种写法
while(scanf("%d %d",&a,&b)==2){printf("%d %d\n",a,b);}//第二种写法
while(~scanf("%d %d",&a,&b)){printf("%d %d\n",a,b);}//第三种写法  
cpp 复制代码
while(cin >> a >> b ){
 cout <<a << b <<endl;
 }
cpp 复制代码
while(cin >> n){
 while( n -- ){
	 cin>>a>>b;       
 	cout<<a<<b<<"\n";
 	}
 }

3、 复杂的输入输出

cpp 复制代码
char c=getchar();//一个一个的读入

string ss;
while(getline(cin,ss)) // 一行一行的读入
 {
 }
getline(cin, s, '?'); // 默认以回车作为结束,如果需要自定义

cout << endl; 除了换行之外,还会清空缓存区,而清空缓存区这件事情会耗时很久,因此为了提高速度,一般直接:cout << "\n";,会快很多

相关推荐
松涛和鸣12 分钟前
DAY32 Linux Thread Programming
linux·运维·数据库·算法·list
LYFlied16 分钟前
【每日算法】LeetCode 234. 回文链表详解
算法·leetcode·链表
NeDon41 分钟前
[OJ]数据结构:移除链表元素
c语言·数据结构·算法·链表
刃神太酷啦42 分钟前
C++ list 容器全解析:从构造到模拟实现的深度探索----《Hello C++ Wrold!》(16)--(C/C++)
java·c语言·c++·qt·算法·leetcode·list
承渊政道43 分钟前
一文彻底搞清楚链表算法实战大揭秘和双向链表实现
c语言·数据结构·算法·leetcode·链表·visual studio
sali-tec1 小时前
C# 基于halcon的视觉工作流-章69 深度学习-异常值检测
开发语言·图像处理·算法·计算机视觉·c#
努力写代码的熊大1 小时前
手撕AVL树:从理论到实践,掌握插入操作的完美平衡
算法
wbs_scy1 小时前
C++:二叉搜索树(BST)完全指南(从概念原理、核心操作到底层实现)
数据结构·算法
东华万里1 小时前
Release 版本禁用 assert:NDEBUG 的底层逻辑与效率优化
java·jvm·算法