前两个问题没有代码没法回答。
第三个问题是因为
第一:c没有初值。应该。char c = 'y'。
第二:不能这样写cin>>c;因为,如果你输入'a'(举个例子而已),那么这时c==‘a',跳出循环。
应该是这样的。
char temp;
cin>>temp;
if(temp!='y' && temp!='n')
{cout<<"输入错误,请重新输入";}
else
{c = temp;}//即,是y或者n时才给c赋值。
关于第一第二个问题,你还是将直接给程序吧。我帮你看看。
邮箱chen_q07@163.com。现在有空,速度传。