您的位置:首页 > 编程语言 > C语言/C++

C/C++中输入多组数据的方法

2017-08-02 11:46 330 查看

如果在刚开始学习算法,做算法题的时候,题上经常会要求输入多组数据,对于刚开始学习的小白来说,可能不知道怎么算输入多组数据,也不知道该怎么处理,刚好想起来,就把方法记录一下

怎么算输入多组数据?

一般题中要求输入多组数据的意思就是读取数量不定的输入数据(不能确定输入数据的数量),在这种情况下,需要不断读取数据直至没有新的输入为止。

方法一:

#include <stdio.h>
int main()
{
int a;
while(scanf("%d",&a)!=EOF)
{
printf("%d\n",a);
}
return 0;
}

上面是使用C语言的的方法,把输入语句作为while循环的判断条件,当输入数据不是文件结束符(EOF)的时候,就可以实现连续输入

方法二:

#include <iostream>
using namespace std;
int main()
{
for(int i;cin>>i;)
{
cout << i << endl;
}
return 0;
}

方法二是用C++for循环实现,将输入语句作为for循环的condition部分,而expression部分省略不写,因为条件部分能改变i的值,所以这个循环无需表达式部分,其中,条件部分不断检查输入流的内容,只要读取完所有的输入或者遇到一个输入错误就终止循环

方法三:

#include <iostream>
using namespace std;
int main()
{
int a;
while(cin>>a)
{
cout << a << endl;
}
return 0;
}

方法三和方法二类似,使用istream对象作为循环的判断条件,检测流的状态。如果流是有效的,即流未遇到错误,那么检测成功。当遇到文件结束符(EOF)或者遇到一个无效输入时istream对象的状态就会变为无效。处于无效状态的istream对象会使条件变假。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C++ 多组数据