C++中为什么while循环的条件不满足也会执行循环
studentnode*p,*head;head=newstudentnode;head->rchild=NULL;head->lchild=NULL;cout<<"输入...
studentnode*p,*head;
head=new studentnode;
head->rchild=NULL;head->lchild=NULL;
cout<<"输入学生信息:"<<endl;
cout<<"输入学生学号:";
cin>>head->stunumber;
int flag=head->stunumber;
cout<<"输入学生姓名:";
cin>>head->name;
cout<<"输入学生生日:";
cin>>head->birthday;
cout<<"输入学生身体情况:";
cin>>head->health;
cout<<"输入学生性别:";
cin>>head->sex;
while(flag!=0)
{
cout<<"输入学生信息:"<<endl;
p=new studentnode;
cout<<"输入学生学号:";
cin>>p->stunumber;
int flag=p->stunumber;
cout<<"输入学生姓名:";
cin>>p->name;
cout<<"输入学生生日:";
cin>>p->birthday;
cout<<"输入学生身体情况:";
cin>>p->health;
cout<<"输入学生性别:";
cin>>p->sex;
if(p->stunumber<head->stunumber&&head->lchild==NULL)
{head->lchild=p;
p->rchild=NULL;p->lchild=NULL;}
else if(p->stunumber>head->stunumber&&head->rchild==NULL)
{head->rchild=p;
p->rchild=NULL;p->lchild=NULL;}
} 展开
head=new studentnode;
head->rchild=NULL;head->lchild=NULL;
cout<<"输入学生信息:"<<endl;
cout<<"输入学生学号:";
cin>>head->stunumber;
int flag=head->stunumber;
cout<<"输入学生姓名:";
cin>>head->name;
cout<<"输入学生生日:";
cin>>head->birthday;
cout<<"输入学生身体情况:";
cin>>head->health;
cout<<"输入学生性别:";
cin>>head->sex;
while(flag!=0)
{
cout<<"输入学生信息:"<<endl;
p=new studentnode;
cout<<"输入学生学号:";
cin>>p->stunumber;
int flag=p->stunumber;
cout<<"输入学生姓名:";
cin>>p->name;
cout<<"输入学生生日:";
cin>>p->birthday;
cout<<"输入学生身体情况:";
cin>>p->health;
cout<<"输入学生性别:";
cin>>p->sex;
if(p->stunumber<head->stunumber&&head->lchild==NULL)
{head->lchild=p;
p->rchild=NULL;p->lchild=NULL;}
else if(p->stunumber>head->stunumber&&head->rchild==NULL)
{head->rchild=p;
p->rchild=NULL;p->lchild=NULL;}
} 展开
4个回答
展开全部
定义了两个flag,while用的是外面一个,而且不会变
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
A、所有搞C++的人除你之外都莫名的错了
B、你电脑某名的坏了
C、你代码错了
你猜是哪个
B、你电脑某名的坏了
C、你代码错了
你猜是哪个
追问
调试时发现while循环条件不满足,也会执行while循环
追答
你搞错了吧、我把你这段代码copy试过了、学号输入0的时候没执行循环呀
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
明知不可能还问
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
请贴代码...
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询