当前位置:编程学习 > C/C++ >>

C++编程问题?编写一个函数判断一个数是否为素数,并在主函数中通过调用该函数求出所有三位数的素数。

编写一个函数判断一个数是否为素数,并在主函数中通过调用该函数求出所有三位数的素数。
答案:

#include <math.h>
#include <stdio.h>

int isPrime(int i);

int main(void)
{
 int c = 0, i;

 for (i=100; i<1000; i++)
  if (isPrime(i))
  {
   printf("%4d", i);
   c++;

   /* 每行显示5个数 */
   if (c%5 == 0)
    printf("\n");
  }

 return 0;
}

int isPrime(int i)
{
 int x;
 int y = (int)ceil(sqrt(i));  /* int y = (int)(sqrt(i + 1)); */

 if (i == 2)
  return 1;

 if (i%2==0 || i<2)  /* 过滤所有偶数及既不是素数又不是合数的情况 */
  return 0;

 for (x=3; x<=y; x++)
  if (i%x == 0)
   return 0;

 return 1;
}

上一个:北大青鸟的编程语言C++难不难啊?
下一个:谁能给一个C++语言的编程软件下载地址

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,