使用C中的do循环重新启动程序



我有一个简单的问题,相信很多人都能轻松回答。我正在努力使我的程序在按下键盘上的"r"字符后重新启动,否则程序将使用任何其他字符关闭。

我知道我需要给你一个do while循环,但我很难弄清楚我需要使用什么语句。这是我的代码(缩写):

 int main()
  {
  do {
  //program contained here//
   scanf("%c", &r);
   } while (_getch == 'r');
   return(0);
   }

它目前不起作用,我很感激任何反馈/回答!附言:我是编码新手哈哈。

尽管这样做很奇怪,为什么不使用简单的if-break呢。

while (1) {
    //program contained here//
    scanf("%c", &r);
    if (r != 'r') break;
}

r是什么,_getch是什么?您尚未声明这两个变量中的任何一个。试试这个:

int main()
{
    char _getch;
    do {
        //program contained here//
        scanf("%c", &_getch);
   } while (_getch == 'r');
   return 0;
}

最新更新