一、while语句
在while语句中遇到接下来情况,语句会停止
1.当i不再满足while括号后面的条件时
2.程序执行过程中遇到break(和switch一样)
while循环中的break是用于永久的终止循环,continue跳过本次循环后面的代码,直接去判断部分,进行下一次循环的判断。
ctrl z就是让我们的getchar返回一个EOF
EOF是个整数,接收他返回的时候最好用个整形接收。所以返回值类型用int。
在运行的时候,输入a,打印的结果将会自动换行,原因就是在输入a之后,按回车,回车就相当于是" \n ",而其又相当于换行。
这个错误是说明:已经打开了一个可执行程序!!!只要关掉就可以了
while语句的应用
输入缓冲区里面本来有" abcdef\n " 被scanf 拿走了abcdef,被getchar拿走了剩下的"\n",由于被getchar拿走的不是Y所以程序自然认为密码是错误的。
如果要解决上面的问题,让程序员确认密码之后再输入结果。就需要在程序中间添上上图当中的画圈的部分。这样的话,"\n" 就被添上的getchar拿走了。所以在后面进行运行的时候,就很正常了。
虽然这种解决问题的方法很好用,但是并不适用于所有的情况。比如当输入"abcdef defghi"
时,将会再次出现上面的问题。因为scanf拿走了abcdef,而getchar拿走了空格,所以就又出现了上面的问题。
附:"不等于"是" !="
添上上面图中画圈的部分,就可以解决上面的问题了