C++while循环特殊用法

初学C++当遇到下面这种类型的输入时:

在这里插入图片描述
也就是说:不指定输入的个数,一直输入,直到满足某个条件停止输入!

1|0常规解法:

#include<iostream> #include<cstdio> using namespace std; int main(){ while(true){ int x; cin>>x; if(x==0) break; for(int i=1;i<=x;i++){ cout<<i<< ' '; } cout<<endl; } return 0; }

2|0特殊方式一:

#include<iostream> #include<cstdio> using namespace std; int main(){ int x; /* 此处引入新的知识点: cin读入函数是有返回值的, 此题意思是是如果读到0跳出循环,等价于方式一的写法 while(ture){ if(x>0) break; } */ while(cin>>x && x){ for(int i=1;i<=x;i++){ cout<<i<<' '; } cout <<endl; } return 0; }

3|0特殊方式二:

方式三: #include<iostream> #include<cstdio> using namespace std; int main(){ /* 方式三: while循环当中是一个",表达式",那么条件里的值就是最后一个",表达式",如果不满足条件break while的结束条件是0 */ int x; while(cin>>x,x){ for(int i=1;i<=x;i++){ cout<<i<<' '; } cout<<endl; } return 0; }
3|1特殊方式三:

输入函数不是cin,而是scanf的话:

scanf函数的结束符号是-1,while(scanf("%d",&x) !=- 1) 或 while(~scanf("%d",&x))


__EOF__

本文作者宋淇祥
本文链接https://www.cnblogs.com/qxsong/p/15837308.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   爪洼ing  阅读(359)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
点击右上角即可分享
微信分享提示