为什么c++执行这个程序时不能循环输入,而是不停的输出? 怎么改进才能循环输入

#include<iostream>
#include<cstdlib>
#include<ctime>
using namespace std;
int main()
{
int i=1,k=1,letter;
while (i=1)
{
cout<<"请输入一个字母:"<<k++<<endl;
cin>>letter;
}
return 0;
}

可以循环输入的。cin是一个阻塞函数,不可能会一直循环

追问

也谢谢你,是我马虎了

温馨提示:内容为网友见解,仅供参考
第1个回答  2016-12-14
你这里letter是int型的你只有输入数字,才能保证下次循环继续接收。如果你输入了字母,就是会一直循环。你想输入字母也能正常,除非你改成
int i=1,k=1;
char letter;本回答被提问者采纳

为什么c++执行这个程序时不能循环输入,而是不停的输出? 怎么改进...
可以循环输入的。cin是一个阻塞函数,不可能会一直循环

为什么这个程序不能跳出循环啊,明天就要交作业,求解啊。。
有问题,\\n你没法输,可以用ctrl+z中止输入,或换个标识符,不如说q

c++此程序如何跳出while循环,输出结果? 输入一堆字符后 要输入\\0? 可...
请注意,while(cin>>currch)这句是永远都成立,为什么呢?因为程序从键盘接受的输入都是ASCII码,而计算机中的ASCII码是没有等于0 的,因此,这个while语句会一直循环下去,不会得到符合退出的条件。改进方法:写成while((cin>>currch)=='0')就可以了!

c++ 我想让这个程序反复执行下去而不是输入一次就结束了 该怎么改?
加一个 while 的循环,并采用特定的字符,结束循环

在VC++中为什么C程序运行后答案一闪而过来不及看清
continue;\/\/这个循环将把输入缓冲区的内容清掉,一直清到换行符。getchar();\/\/这是你为了防止一闪而过而加的语句 return 0;} 复杂一点的解决方案是,不要在visual c++中执行。你先生成可执行文件,然后打开行命令模式(运行->cmd),然后在那里运行你的程序,就不会自动退出了。sorry,刚才试了一下...

C++编程问题:为什么以下代码运行后输入数字循环正常,但输入字母就会陷入...
cin输入原理:程序的输入都建有一个缓冲区,即输入缓冲区。一次输入过程是这样的,当一次键盘输入结束时会将输入的数据存入输入缓冲区,而cin函数直接从输入缓冲区中取数据。正因为cin函数是直接从缓冲区取数据的,所以有时候当缓冲区中有残留数据时,cin函数会直接取得这些残留数据而不会请求键盘输入.int...

C++怎么加这个继续输入
像你的程序可以这么改:#include <stdio.h>int main(){int score,t; char ch; \/\/定义一个字符变量,用于接收Y或Nloop1: \/\/定义开始循环的标签,取名为loop1 printf ("请输入成绩:"); scanf("%d",&score); if(score > 100||score < 0) {printf("输入错误,请重新输入\\n");...

为什么这个程序不能循环?只能输出个位数字
注意哈:return 0;这句不能在循环里面,也就是不能放在for循环里面,否则的话会立即跳出循环 return的作用就是跳出当前方法,也就是立即停止return所在的函数,你这里只有一个主函数,所以一旦执行了return 0;这句的话,假如return后面还有语句一句都不会执行(我是根据C#语言的经验来使用return的,以前...

C++程序,为什么这个程序输入要按2次回车才能输出来,要怎样修改使得按一...
需要两次的原因:while (getline(cin, line)) \/\/程序停(阻塞)在这里等待输入。你输入后,返回一个长度(非零值){ cout << line << endl; \/\/ 程序执行 } \/\/到这里后,程序将继续回到while (getline(cin, line)) 处等待。为什么?C语言就这么规定的 第二次输入回车,getline(cin, li...

求大神解答我这段C++程序为什么不能循环啊?
scanf("%d %s %c %d %d %d %c",&person[i].num,&person[i].name,&person[i].sex,&person[i].birthday.year,&person[i].birthday.month,&person[i].birthday.day,&person[i].job);修改为:scanf("%d %s %c %d %d %d %c",&person[i].num,person[i].name,&person[i].sex,&...

相似回答