在此程序中“正在”做什么?

时间:2018-10-06 17:46:39

标签: c while-loop

这是一个C语言程序,用于查找离散频率分布的算术平均值。 该程序按预期运行,但无法在main()函数中了解该程序中“ While”的作用。

void main()
{
  int choice;
  while(1)
  {

  printf("\n\tThe Mean for Discrete Distribution ");
  printf("\n\n1.Direct Method \n2.Shortcut Method \n0.Exit ");
  printf("\nEnter your choice: ");
  scanf("%d",&choice);

  switch(choice)
  {
    case 1:
      getdata();
      direct();
      break;

    case 2:
      getdata();
      shortcut();
      break;

    case 0:
      exit(0);
      break;

    default:
      printf("\nEnter valid choice!");
      break;
   }

  }
}

该程序运行得很好,但是我只是不理解“ while”在这里做什么。该程序非常庞大,因此我没有编写函数。

2 个答案:

答案 0 :(得分:2)

由于while(1)始终为true,因此该程序会不断提示用户“ 输入您的选择”,直到用户点击0。输入0后,整个程序将停止,因为将调用函数exit(0)

答案 1 :(得分:1)

它使程序一直运行,直到用户输入0并调用exit(0)。