色图,快乐。
好了,说正事
在进行输入输出时,我总是搞不清怎么用循环。
这次在做洛谷一道题时,瞬间又傻了。
说实话,我的应用了解,当时只限于 for( ;scanf()!=’\n’; ) ?
就没了。
虽然是知道有一些限制条件放在for 或者while 语句中能实现一些输入格式,但还是不能得起法。
在如何应对若干行的输入输出时,
在看大佬代码时,学到:
for( ; ; )
{ }
这样一直是执行循环。在百度时,这不是死循环吗。但要注意到一点,for 的内部是可以加上限制条件的,这样做只是为了有个理由执行一下循环。即for的一种写法。
可以用
for( ; ; )
{ scanf("%d%d%d",&a,&b,&c);
printf("%d%d%d",a,b,c);
}
他就能做到想输入几波就输入几波。
所以是输入这个执行条件我们的手中,实现了由我们控制循环。
还学到 while(scanf("%d%d",&a,&b)==2)
该条件是用来判断是否输入是两个,
其实和上面例子一样,还是找理由执行循环,不过限制在三位输入
题目还要求输入一行 并不有输出的输入,
这里我们可以在for中加个判断,让他输出个空,其实就是变相将它扔掉。