|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
这是我上个帖子某个大佬教我的模拟电梯的,可以正常输出当前电梯所在楼层
#include<stdio.h>
int main(void)
{
int beg = 1,des;
printf("当前楼层:%d ,请输入您想去的楼层:(按q放弃)",beg);
while(scanf("%d",&des))
{
if (des > beg) printf("电梯上行");
else if (des == beg) printf("无需移动");
else printf("电梯下行");
beg = des;
printf("当前楼层:%d ,请输入您想去的楼层:(按q放弃)",beg);
}
printf("Done");
return 0;
}
之后我想用while(1)的方法来改,也可以出现同样的效果,但是一直显示在第一层,请问各位大佬们,怎样做才可以和上面得到一样的效果。下面是我的用while(1)来模拟的程序:
int main(void)
{
int beg = 1;
int des,angle;
printf("当前楼层:%d ,请输入您想去的楼层:(按q放弃)",beg);
while(1)
{
des = scanf("%d",&des);
if (des > beg){
printf("电梯上行");
}
else if
(des == beg) printf("无需移动");
else {
printf("电梯下行");
}
beg = des;
printf("当前楼层:%d ,请输入您想去的楼层:(按q放弃)",beg);
}
printf("Done");
return 0;
}
这里一直显示在第一层,有没有大佬教一下用while(1)来写和上面的代码是一样的效果
你scanf返回值是一个状态值,成功执行就返回1,所以一直在一楼
|
|