#include?stdio.h
成都創(chuàng)新互聯(lián)從2013年開始,先為薌城等服務(wù)建站,薌城等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為薌城企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
#include?math.h
//判斷整數(shù)是否為素?cái)?shù)
int?isPrime(int?n)
{
int?i;
for(i=2;i=(int)sqrt(n);i++)?//遍歷從2~n的平方根向下取整
if(n%i?==?0)??//如果有i能被n整除,則n不是素?cái)?shù),返回0,否則返回1
return?0;
return?1;
}
//編寫測試主函數(shù)
int?main()
{
int?n;
scanf("%d",n);
if(n2)
{
printf("輸入錯(cuò)誤!\n");
return?-1;
}
if(isPrime(n))??//調(diào)用素?cái)?shù)判斷函數(shù)
printf("%d?is?a?prime?number\n",n);
else
printf("%d?is?not?a?prime?number\n",n);
return?0;
}
看代碼:
#include?stdio.h
#include?math.h
//?判斷是否是素?cái)?shù),是的話返回?1,不是返回?0
int?is_prime(int?num)
{
if?(num??2)
{
return?0;
}
int?i,?tmp?=?(int)sqrt(num);
for?(i?=?2;?i?=?tmp;?++i)
{
if?(num?%?i?==?0)
{
return?0;
}
}
return?1;
}
int?main(int?argc,?char**?argv)
{
int?i;
printf?("1?~?100?的素?cái)?shù):\n");
for?(i?=?1;?i?=?100;?++i)
{
if?(is_prime(i))
{
printf?("%d\n",?i);
}
}
return?0;
}
運(yùn)行:
#include stdio.h
int fun(int x)//
{
if(x2)
return 0;//返回0,非素?cái)?shù)
for(int i=2;i*i=x;i++)
if(x%i==0)
return 0;
return 1;//返回1,素?cái)?shù)
}
int main()
{
int n;
scanf("%d",n);
if(fun(n)==1)
printf("%d是素?cái)?shù)\n",n);
else
printf("%d不是素?cái)?shù)\n",n);
return 0;
}
#include
"stdio.h"
#include
"math.h"http://判斷一個(gè)整數(shù)是否為素?cái)?shù)
bool
prime(int
x)
{
int
i;
for(i=2;i=
sqrt(x);i++)
{
if(x%i==0)
return
false;
}
return
true;
} //判斷一個(gè)整數(shù)(1位或多位)是否每一位都是素?cái)?shù)
bool
allPrime(int
a)
{
if(prime(a%10))
//如果個(gè)位是素?cái)?shù)
{
a=a/10;
return
allPrime(a);
}
else
return
false;
}//
打印出1-5000內(nèi)滿足題意的素?cái)?shù)
void
printPrime()
{
int
i;
int
a=0;
for(
i=11;i5000;)
//
1-9
不用再判斷了,只有一位。10和5000很明顯也不用去判斷了,不是素?cái)?shù)
{
if(prime(i))
//
如果i是素?cái)?shù),判斷個(gè)位是不是素?cái)?shù),如果個(gè)位不是,不滿足第二個(gè)條件
{
if(prime(i%10))
//判斷個(gè)位
{
a=i/10
;
//a就是去掉個(gè)位后的數(shù)
if(prime(a))
//判斷a
是否是素?cái)?shù),如果是,再判斷a每一位是否是素?cái)?shù)
{
if(allPrime(a))
printf("%d\n",i);
} }
}
i+=2;
}
}int
main()
{
printPrime();
}