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

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

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";,会快很多

相关推荐
码爸8 小时前
线性回归算法
算法·机器学习·线性回归
Coder-magician9 小时前
《代码随想录》刷题打卡day51:图论-part09(dijistra堆优化,Bellman_ford算法)
算法·图论
Nil2089 小时前
leetcode 763划分字母区间
算法·leetcode·职场和发展
不会就选b9 小时前
算法日常・每日刷题--<动态规划>20
算法·leetcode·动态规划
青少儿编程课堂10 小时前
迪杰斯特拉(Dijkstra)算法:单源最短路与赛场路线规划
c++·python·算法·bfs·信息学竞赛
不会就选b10 小时前
算法日常・每日刷题--<动态规划>19
算法·leetcode·职场和发展
没有钱的钱仔11 小时前
协方差矩阵含义
算法·机器学习·矩阵
垆边人似月.11 小时前
华为机试题 :和为 K 的子数组个数
算法·leetcode·华为
三*一12 小时前
优化修整算法
前端·javascript·算法