C语言中,如何用键盘输入来退出循环
C语言中,想用键盘输入一个字符(getchar)来达到退出循环(while)的目的,代码该如何写。charc;while(c=getchar()!='y'){}如果这样写...
C语言中,想用键盘输入一个字符(getchar)来达到退出循环(while)的目的,
代码该如何写。
char c ;
while(c=getchar()!='y')
{
}
如果这样写的话,每做一次循环都要输入一个字符,否则循环就不能继续执行下去。能否有其它方法,使循环在不按任何键的时候连续执行,而按下一个键以后就退出循环。 展开
代码该如何写。
char c ;
while(c=getchar()!='y')
{
}
如果这样写的话,每做一次循环都要输入一个字符,否则循环就不能继续执行下去。能否有其它方法,使循环在不按任何键的时候连续执行,而按下一个键以后就退出循环。 展开
展开全部
while(bioskey(0));
你按任何一个键就退出循环。不用按回车。
int bioskey(int cmd)本函数用来执行各种键盘操作,由cmd确定操作。
cmd可为以下值:
0 返回敲键盘上的下一个键。若低8位为非0,即为ASCII字符;若低8位为0,
则返回扩充了的键盘代码。
1 测试键盘是否可用于读。返回0表示没有键可用;否则返回下一次敲键之值。
敲键本身一直保持由下次调用具的cmd值为0的bioskey所返回的值。
2 返回当前的键盘状态,由返回整数的每一个位表示,见下表:
┌——┬———————————┬———————————┐
│ 位 │为0时意义 │为1时意义 │
├——┼———————————┼———————————┤
│ 7 │插入状态 │改写状态 │
│ 6 │大写状态 │小写状态 │
│ 5 │数字状态,NumLock灯亮 │光标状态,NumLock灯熄 │
│ 4 │ScrollLock灯亮 │ScrollLock灯熄 │
│ 3 │Alt按下 │Alt未按下 │
│ 2 │Ctrl按下 │Ctrl未按下 │
│ 1 │左Shift按下 │左Shift未按下 │
│ 0 │右Shift按下 │右Shift未按下 │
你按任何一个键就退出循环。不用按回车。
int bioskey(int cmd)本函数用来执行各种键盘操作,由cmd确定操作。
cmd可为以下值:
0 返回敲键盘上的下一个键。若低8位为非0,即为ASCII字符;若低8位为0,
则返回扩充了的键盘代码。
1 测试键盘是否可用于读。返回0表示没有键可用;否则返回下一次敲键之值。
敲键本身一直保持由下次调用具的cmd值为0的bioskey所返回的值。
2 返回当前的键盘状态,由返回整数的每一个位表示,见下表:
┌——┬———————————┬———————————┐
│ 位 │为0时意义 │为1时意义 │
├——┼———————————┼———————————┤
│ 7 │插入状态 │改写状态 │
│ 6 │大写状态 │小写状态 │
│ 5 │数字状态,NumLock灯亮 │光标状态,NumLock灯熄 │
│ 4 │ScrollLock灯亮 │ScrollLock灯熄 │
│ 3 │Alt按下 │Alt未按下 │
│ 2 │Ctrl按下 │Ctrl未按下 │
│ 1 │左Shift按下 │左Shift未按下 │
│ 0 │右Shift按下 │右Shift未按下 │
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
char c ;
while(c=getchar()!='y')
{
}
如果这样写的话,每做一次循环都要输入一个字符,否则循环就不能继续执行下去。能否有其它方法,使循环在不按任何键的时候连续执行,而按下一个键以后就退出循环。
当 while (1) 就不按任何键就循环执行啦(死循环)
按下一个键后就退出循环 按下一个键也是要从键盘接受输入的 然后赋值给变量 由变量判断是否退出.
所以不肯能不按任何键就退出循环的
除非你在循环的时候指定了条件的 比如循环10次啊 或者什么的
while(c=getchar()!='y')
{
}
如果这样写的话,每做一次循环都要输入一个字符,否则循环就不能继续执行下去。能否有其它方法,使循环在不按任何键的时候连续执行,而按下一个键以后就退出循环。
当 while (1) 就不按任何键就循环执行啦(死循环)
按下一个键后就退出循环 按下一个键也是要从键盘接受输入的 然后赋值给变量 由变量判断是否退出.
所以不肯能不按任何键就退出循环的
除非你在循环的时候指定了条件的 比如循环10次啊 或者什么的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
while(true)
{
printf("您要退出循环吗?(Y/N)");
if(getchar()=='Y') break;
}
{
printf("您要退出循环吗?(Y/N)");
if(getchar()=='Y') break;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
char a ;
while(a=getchar()!='/0')
{
}
while(a=getchar()!='/0')
{
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询