当前位置: 代码迷 >> C语言 >> C语言循环语句
  详细解决方案

C语言循环语句

热度:111   发布时间:2007-03-13 13:16:57.0
虽然我没试过你的办法;你试下我的办法.
while(1)
{
printf("语句1");
scanf("%d",&数值变量);
……
printf("语句2");
scanf("%c",&ch);
if(ch=='n') break;

}
----------------解决方案--------------------------------------------------------
的确。LS的办法不错哦!
----------------解决方案--------------------------------------------------------

我那个怎么不行,原理一样啊


----------------解决方案--------------------------------------------------------
getch()

----------------解决方案--------------------------------------------------------

加一个getch()解决了,原理就是3楼说的


----------------解决方案--------------------------------------------------------
以下是引用PcrazyC在2007-3-13 13:27:12的发言:

我那个怎么不行,原理一样啊

下一个输入接收缓冲区的字符(这里应该是个回车符).
----------------解决方案--------------------------------------------------------

我的完全可以

while(1)
{
scanf("%c",&ch);
if(ch=='n'||ch=='N') break; 就是位置要换下.要不底下的会出现2次
printf("语句1");
scanf("%d",&数值变量);
……
printf("语句2");

}


----------------解决方案--------------------------------------------------------
以下是引用PcrazyC在2007-3-13 13:27:12的发言:

我那个怎么不行,原理一样啊

我问的是和11楼的,不是和走刀口的
----------------解决方案--------------------------------------------------------

以下是引用jtws3000在2007-3-13 11:15:47的发言:

思路:用一个字符变量控制循环,由用户输入字符,当字符为"n"时,则结束循环体,否则则执行循环体

while(ch!='n')
{
printf("语句1");
scanf("%d",&数值变量);
……
printf("语句2");
scanf("%c",&ch);
}

我感觉没有错啊,每次循环结果的时候,由用户输入一个字符,然后再按情况执行循环体。但是用Turbo C运行时总是语句2后面连着就出现了下一次循环的语句1,根本就不给用户输入ch的值,自动进入下一次循环。如果在数值变量那个地方输入n也可以退出循环体。郁闷,谁给解释一下


第一句 while(ch!='n') ch 没有值;可能没影响.不过最好先赋;
如果第一次输入N 那么正常退出,如果第一次 不是N 那么.这里语句1本来就是运行了2次,因为在判断之前你已经运行了.


----------------解决方案--------------------------------------------------------
  相关解决方案