#include<iostream>
using namespace std;
int main()
{
int a;
while(cin>>a)
{
for(int i=1;i<=a;i++)
{
cout<<i<<" ";
}
cout<<endl;
}
}
重要前提:
while循环,true或非0则死循环,false或0则循环停止。
①若未知连续输入结束位置,用while(cin>>a):
1、cin>>也有返回值,返回值是一个“已经读取了a的新流”。若读取的是不匹配类型的值或EOF(输入结束符,可认为是-1),都代表false。因此,用while循环,若想要一直cin读取(不知道明确的输入停止位置),可在while()括号内写cin,则自然会在输入停止时停止while循环,另外,此题也可以通过输入字母来停止循环。
2、c语言写法:while(scanf(“%d”,&a)!=-1) 或 while( ~scanf(“%d”,&a) )
②若已知连续输入的个数n,用while(n–):
输入了n次之后,n从1变成0,while(0)循环停止。
例如:
int n;
cin>>n;
while(n--)
{
...
}