『壹』 c語言,輸出1-100之間的所有素數,運用自定義函數!用循環來寫。
看代碼:
#include<stdio.h>
#include<math.h>
//判斷是否是素數,是的話返回1,不是返回0
intis_prime(intnum)
{
if(num<2)
{
return0;
}
inti,tmp=(int)sqrt(num);
for(i=2;i<=tmp;++i)
{
if(num%i==0)
{
return0;
}
}
return1;
}
intmain(intargc,char**argv)
{
inti;
printf("1~100的素數: ");
for(i=1;i<=100;++i)
{
if(is_prime(i))
{
printf("%d ",i);
}
}
return0;
}
運行:
『貳』 編寫一個程序,輸出1~1000之內所有的素數(注意:素數即質數)及個數(C語言)
源代碼如下:
#include <stdio.h>
#include <math.h>
void main()
{
int n=0, i, j,w,k;
for(i=2;i<=1000; i++)
{
w=1;
k=sqrt(i);
for (j=2; j<=k; j++)
if (i%j==0) {w=0;break;}
if (w) {
++n;
if (n%10==0) printf("%d ",i);
else printf("%d ",i);
}
(2)c語言循環1100素數擴展閱讀
1、素數使用for循環查找2-1000以內的所有素數,循環次數為999次,在for循環中添加一個移位寄存器用以存儲所有的素數,其初始值為一個空數組。
2、在循環內部逐個數判斷是否為素數,若是素數,則使用"數組插入.vi"函數添加到移位寄存器的數組中,否則,移位寄存器中的值保留為上次的值。
『叄』 用c語言求500到1000的素數
#include <stdio.h>
int isprime(int n)
{
int i;
前知 if(n<2)
return 0;
for(i=2;i*i<=n;++i)
if(n%i==0)
芹者 return 0;
慧首消 return 1;
}
int main()
{
int i;
for(i=500;i<1000;++i)
if(isprime(i))
printf("%d ",i);
return 0;
}
『肆』 用C語言編程 列印出3到1100 之間的全部素數(判素數由函數實現)
/*求2個素數之間個數*/
#include<stdio.h>
#include<math.h>
int
count_prines(int,int);
void
main(void)
{
int
m,n,t;
printf("請輸入2個自然數:");
scanf("%d%d",&m,&n);
t=count_prines(m,n);
printf("在%d和%d之間有%d個素數
",m,n,t);
}
/*素數統計函數*/
int
count_prines(int
m,int
n)
{
int
i=0,s,k=0,tag=1;
if(m>n)s=m,m=n,n=s;
if(n==2)k=1;
else
if(n>2)
{
if(m<=2)k=1,m=3;
else
m+=1-m%2;
for(;m<=n;m+=2)
{
tag=1;
s=(int)sqrt(m);
for(i=3;tag&&i<=s;i+=2)
tag=m%i;
k+=(tag>0);
}
}
}
這個是統計兩個數之間的全部素數,很快的,希望對你有幫助!