注册 登录
编程论坛 C++教室

这个程序哪出问题了,帮忙找一下

keqiang 发布于 2008-06-24 18:23, 512 次点击
这个程序的问题:只能第一次运行成功,第二次以上它都自动运行了,看问题出在哪里。我正在找...........
#include <iostream.h>
int main()
{
for(int i=1;i<10;i++)
{
int a=0,b=0;
float c=0;
cout<<"输入一组数字,求其平均值,输入完毕时,输入ok即可。"<<endl;
for(;;)
{
cout<<"输入这组的第"<<b+1<<"个数据:";
cin>>a;
if(a==char()) break;
b=b+1;
c=c+a;
}
cout<<"这"<<b+1<<"组数的平均值:"<<c/b<<endl;
}
}
2 回复
#2
安静的小羊2008-06-24 18:52
char()好像只能判断 0 值吧。

你的a是int类型,但你后面要输入ok,这将导致a找不到匹配的字符,而你输入的ok就会一直留在缓冲区里面,造成死循环了。
#3
keqiang2008-06-27 12:25
二楼,有疑问?
上面的循环变量不是a,而是i,而且每次循环a都重新赋值了,那ok怎么造成造成死循环??ok的值并没有赋给a,也没有赋给i啊,怎么会妨碍循环呢?
1