求各位c++高手帮忙!!!

 我来答
一汽大众拭壬6
2013-10-16 · TA获得超过440个赞
知道小有建树答主
回答量:256
采纳率:98%
帮助的人:56.9万
展开全部
你的程序的错误之处在于:(1)第一个cin 和if(s100){}循环中的cin.有问题。
(2) while (a>=3)的条件错了。
原因:之所以出现你说的这个情况(只能2次就退出了),是因为while 循环条件你弄错了,do -while 是出口循环,先执行do {}中的循环体,然后再判断while中的判别式,如果判别式为true,继续执行循环体,否则终止循环。
你这个程序,第一次执行第一个cin,第二次执行d0-while 循环,不管你输入的是否是多少(100),因为初值是0,之后变成0(你输入的是0~100),或者1(你输入的100),while的条件a>=3都不满足,所以退出循环,程序结束了。就是你说这个情况。
一种正常的程序如下:
#include
using namespace std;
int main()
{
int i,s,a=0;
do{
cout<<"你考试考了多少分?(0~100)"<<endl;
cin>>s;
if(s100)
{
a++;
cout<<"chongxinshuru";
}
else{
i=s/10;
switch(i)
{
case 10:
case 9:
cout<<"you"<<endl;
break;
case 8:
cout<<"liang"<<endl;
break;
case 7:
case 6:
cout<<"zhong"<<endl;
break;
default:
cout<<"cha"<<endl;
}
}
}while(a<3);
return 0;
}
你能成功的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式