『壹』 c語言求區間內素數
代碼如下:
#include <stdio.h>
int f(int x)
{
int i;
if(x<2) return 1;
for(i=2;i*i<=x;i++)
{
if(x%i==0) return 1;
}
return 0;
}
int main()
{
int m,n,i;
printf("請輸入兩個區間:\n");
scanf("%d%d",&m,&n);
for(i=m;i<=n;i++)
{
if(f(i)==0) printf("%d\n",i);
}
return 0;
}
僅供參考。
『貳』 C語言 輸出1到100之間的全部素數
有三種方法:
1、輸出1-100以內的素數:
(2)c語言求區間內所有的素數擴展閱讀:
在這個小程序中主要用到的是for循環
for 循環語句的一般形式為:
for (表達式1; 表達式2; 表達式3)
{
語句;
}
需要注意的兩點:
1) 表達式1、表達式2和表達式3之間是用分號;隔開的,千萬不要寫成逗號。
2)for(表達式1;表達式2;表達式3)的後面千萬不要加分號,很多新手都會犯這種錯誤——會情不自禁地在後面加分號。
因為 for 循環只能控制到其後的一條語句,而在C語言中分號也是一個語句——空語句。所以如果在後面加個分號,那麼 for 循環就只能控制到這個分號,下面大括弧裡面的語句就不屬於 for 循環了。
『叄』 C語言 求出1~N內的所有素數
素數就是只能被1和自身整除的數,可以定義一個函數用於判斷一個數是否是素數,接著從10到100依次遍歷,判斷其是否是素數,如果是並輸出。
參考代碼:
#include "stdio.h"
int fun(int n){//判斷n是否是素數
int i;
for(i=2;i
評論
0
0
載入更多
『肆』 求高手幫我用C語言編寫一道程序,給出整數a,b,求出區間[a,b]內的所有素數
#include<stdio.h>
bool prime(int n)
{
int i;
if(n==1)return 0;
for(i=2;i*i<=n;i++)
{
if(n%i==0)return 0;
}
return 1;
}
void main()
{
int i,n,a,b;
scanf("%d",&n);
while(n--)
{
scanf("%d%d",&a,&b);
for(i=a;i<=b;i++)
{
if(prime(i))printf("%d ",i);
}
printf("\n");
}
}
『伍』 C語言程序 要求輸出區間[100-200]內的所有素數
舉個例子,118是合數,但是118%10是不等於0的,所以isprime=1,這個時候循環就停止了,函數返回1,所以就輸出了。函數的問題在於isprime的值一直在變
『陸』 C語言求范圍之內素數的和與個數
按照你的要求編寫的C語言程序如下
#include<stdio.h>
int f(int x) //定義判斷素數的函數
{
int n,flag=1;
if(x==1) return 0;
for(n=2;n<x;n++)
if(x%n==0)
flag=0;
return flag;
}
int main()
{
int i,N,M,count=0,sum=0;
scanf("%d%d",&N,&M);
for(i=N;i<=M;i++){
if(f(i)==1){
count++;
sum=sum+i;
}
}
printf("%d到%d之間共有%d個素數,它們的和為%d",N,M,count,sum);
return 0;
}
『柒』 c語言 求[500,800]區間內的素數
#include<stdio.h>
#include<conio.h>
#include<math.h>
intcountvalue(intaa[]){
inti,flag,j,cnt=0;
for(i=500;i<=800;i++){//;
flag=1;
for(j=2;flag&&j<=sqrt(i);j++)
if(i%j==0)flag=0;
if(flag)aa[cnt++]=i;
}
returncnt;
}
intmain(){
inti,cnt,c[500];
cnt=countvalue(c);
printf("素數總數=%d
",cnt);
for(i=0;i<cnt;++i){
if(i&&i%10==0)printf("
");
printf("%5d",c[i]);
}
if(i%10)printf("
");
getch();
return0;
}
『捌』 c語言求【500-800】區間內的素數。
#include <stdio.h>
void main()
{
int m,i,s;
m=500;
s=0;
while(m<800)
{
i=2;
while((m%i!=0)&&(m>i))
i=i+1;
if(i==m)
{
s++;
printf("%5d",m);
if(s==10 )
{
printf("\n");
s=0;
}
}
m=m+1;
}
printf("\n");
}
『玖』 用C語言寫一個調用函數,求出一個范圍內的素數,范圍自己輸入
#include<stdio.h>
#include<math.h>
intprime(inta,intb)//求出整數a-b范圍內的所有素數
{
inti=2,j,n;
for(j=a;j<=b;j++)
{
n=sqrt(j)+1;//j的平方數+1
i=2;
while(i<n)
{
if(j%i==0) //整除,退出循環
break;
i++;
}
if(i==n)//非整除退出循環,i肯定等於n
printf("%d",j); //j是素數,輸出
}
}
intmain()
{
inta,b;
scanf("%d%d",&a,&b);//輸入整數范圍a-b
prime(a,b);
return0;
}
『拾』 c語言,求解區間【a,b】內素數個數,帶上注釋~~
#include<stdio.h>
intmain()
{
inta,b,i,j;
scanf("%d%d",&a,&b);
if(a>b){
t=a;a=b;b=t;//jiaohuan
}
for(i=a;i<=b;++i){//循環
if(i>=2){//合法數
for(j=2;j*j<=i;++j){//j<=i開根號
if(i%j==0)break;//整除
}
if(j*j>i)printf("%d ",i);//遍歷完j則為素數,輸出
}
}
return0;
}