HighPulledBelt
HighPulledBelt
2017-08-31 18:07

菜鸟练手的小程序,发现while变成死循环,不明原因,求高手解惑

  • c
  • win32
  • visual studio

一个验证质数的小程序

 // ConsoleApplication2.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include "math.h"
//验证x是否为质数


int main()
{
    int x, A=2, B=2, FLAG;    //A是第一个试验因数,B是第二个试验因数
    printf("The number: ");
    scanf_s("%d",&x);   //输入需验证数字




    while ( (A * B) <= x )        //这层用来改变第一个试验因数    
    {
        while ( (A * B) <= x );  //这层用来改变第二个试验因数
        {
            if ( (A*B) == x )
            {
                FLAG = 0;goto END;
             }
            else if ( (A*B) < x )
                B = ( B + 1 );
            else 
                goto NEXT;
          }

    NEXT:
        A = (A + 1) ; B = A;
     }






  END:
      if (FLAG = 0)
      {
          printf("It's not a prime number/n");
          printf("The factors that had been found are:%d AND %d", A, B);
      }
     else
          printf("It's a prime number");






 return 0;

}

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

4条回答