当前位置:首页 » 编程语言 » c语言输出素数编写
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言输出素数编写

发布时间: 2022-12-20 18:20:55

A. 输出[m,n]之间的素数,用c语言编程怎么写。谢谢,

先定义一个函数判断是否素数,例如:
int fun(int x){
int i;
for (i=2;i<x;i++) if (x%i==0) return 0;
return 1;
}

主程序输入m和n,然后循环他们之间的所有数,调用函数fun返回1的就输出,例如:
main(){
int m,n,i;
scanf("%d%d",&m,&n);
for (i=m;i<=n;i++) if (fun(i)) printf("%d\t",i);
}

把上面两部分连接起来,最前面加上下面一行就是完整的程序:
#include <stdio.h>

B. C语言:输出素数

if (i>=k+1)
{
printf("%4d",n);
m=m+1;
}
if (m%5==0)
{
printf("\n");
}
这一段
应该改成
if (i>=k+1)
{
printf("%4d",n);
m=m+1;
if (m%5==0)
{
printf("\n");
}
}

因为你的m只有在遇到素数时才应该判断是否要换行,下面的判断语句如果放在if外面,就会导致在遇到一些非素数时依然去输出换行

C. 编写C语言程序,输入一些正整数,输出其中的素数

任意范围内筛选素数
#include "stdio.h"
void main()
{
int h,l,a,b,c;

printf("请输入该范围的最小值和最大值\n");
scanf("%d %d",&c,&a);
for(h=c;h<=a;h++)
{
b=1;
for(l=2;l<h;l++)
{
if(h%l==0)
b=0;
}
if(b==1)
printf("%3d",h);
}
}

D. 用c语言编写程序输出1-100内的素数

用常规的判素性方法可如下实现
#include "stdio.h"
#include "math.h"
bool IsPrime(int x)
{
int i, s;
s = sqrt(x + 1);
for(i = 2; i <= s; i++)
if(x % i == 0) return false;
return true;
}
void main( )
{
int i;
for(i = 2; i < 100; i++)
if(IsPrime(i))
printf("%d ", i);
}
也可采用筛选法,筛选法效率会高一些,楼上的虽然也是筛选法,但他的效率却并不高。筛选法的思路是将那些非素数筛掉,留下那些素数。命题“对于1<x<100的合数x, 必含有小于10的质因子”可以证明是真命题,它的逆反命题“对于1<x<100的数,如果不含有小于10的质因子,则它必为素数。”则也是真命题。因此筛除时,只要筛除含有10以内的质因子的数就可以了。下面给出筛选法的代码。
#include "stdio.h"
void main( )
{
bool isprime[100];
int i, j;
isprime[0] = false;
isprime[1] = false;
for(i = 2; i < 100; i++) /*先初始化2~100的都是素数,然后将非素数筛除掉*/
isprime[i] = true;
for(i = 2; i < 10; i++) /*将所有含有小于10的质因子的数筛除掉*/
{
if(isprime[i]) /*如果i是素数,则将它的倍数全部筛掉*/
for(j = i * i; j < 100; j += i) /*从i*i开始检测是因为小于i*i的合数都被小于i的素数筛除了*/
isprime[j] = false;
}
for(i = 2; i < 100; i++)
if(isprime[i])
printf("%d ", i);
}

E. 用C语言编写在自然数中输出100以内的素数

#include<stdio.h>

//输出100之内的所有素数

int main()

{

int i;

int j;

int flag = 1;

for(i = 2;i <= 100;i++)

{

for(j = 2;j <= i / 2;j++)

{

if(i % j ==0)

{

flag = 0;

break;

}

}

if(flag == 1)

{

printf("%d ",i);

}

flag = 1;

}

return 0;

}

(5)c语言输出素数编写扩展阅读

#include <stdio.h>

int main()

{

int a;

for (int i = 2; i < 100; i++)

{

int a = 0;

/* code */

for (int j = 2; j < i; j++)

{

/* code */

if (i % j == 0)

{

/* code */

a++;

}

}

if (a == 0)

{

/* code */

printf("%d is sushu ", i);

}

else

{

/* code */

printf("%d is not sushu ", i);

}

}

return 0;

}

F. c语言编写程序,输出1000内的所有素数, 每行显示10个数

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
/*****************************************************************
*本程序用来计算1000内质数有哪些及一共有哪些。
*
*知识点:什么是质数?及只能被本身和1整除的整数。
*
*时间:2018.10.22
*****************************************************************/
int main(void)
{
int i,j,result = 0,sum = 0; //i-循环变量和被判断数 j-循环变量和判断数 result-验证是否为质数的返回值 sum-质数总量计数
for (i = 2;i <= 1000;i++) //第一个循环用来取出被判断数 从2开始到1000
{
for (j = 2; j <= sqrt(i) + 1;j++) //第二个循环是用来判断这个数是否为质数并返回,从2开始至被判断数开根后+1. sqrt(i)后面不+1 会把质数2 3丢掉
{
if (i%j == 0 && i != j) //如果被判断数用2-被判断数来取余,如果余数为0 且不是被自已整除那么这个数一定不是质量直接返回
{
result = 0; //判断出是质数后返回前必须给返回值赋0值,0代表非质数 1代表质数
break;
}
result = 1;
}
if (result == 1) //如果此数为质数 质数总量+1后并打印 把result返回值初始化准备下一个循环判断。
{
sum++;
printf("第%d个质数:%d \n",sum,i);
result = 0;
}
}
return 0;
}

G. C语言输出素数

//你的逻辑错误太多,给你个新的得了
#include<stdio.h>

int main()
{
int a,b,i,j;
printf("欢迎使用素数输出运算,请输入运算区间a~b。\n");
scanf("%d,%d",&a,&b);
for(i=a;i<=b;i++)
{
if(i>1)
{
for(j=2;j<i;j++)
{
if(0==i%j)
{
break;
}
}
if(j>=i)
{
printf("%d ",i);
}
}
}
return 0;
}

H. 用C语言编写一个程序,输出100以内的所有的素数.要求每行仅输出5个素数.

除2以外,素数皆为奇数,所以对2单独处理,从3开始,将100以内的奇数逐一进行素数考察,是则输出,不是则跳过。另设一计数变量控制换行,每输出5个素数添加一个回车。代码如下:

#include "stdio.h"

int main(int argc,char *argv[]){

int i,n,t;

pr

#include

#include

main()

{

int a,i,flag,count=0;

for(a=1;a <=100;a++)

{

flag=0;

for(i=2;i

#include int main()

{

int i,n,k,b;

for(i=1,b=1;i<=100;i++)

{

for(n=2;n {

k=i%n;

if(k==0)

break;

}

(8)c语言输出素数编写扩展阅读:

C语言注意事项:

1、预编译命令不是语言语句,不使用分号,不占用运行时间。

2、在IDE中通常包括编辑器,编译器,汇编器和链接器,在这个过程中是语言等级逐级降低的过程,从最高级的c语言到中级语言汇编语言再到低级语言机器语言,编辑器生成文件为.c文件,编译器生成的文件为obj汇编器生成的文件为.0文件,链接器生成的是exe文件。

3、注意 return和exit的区别, return是让本函数运行结束,而exit是让本程序运行结束。

4、在指针定义时,一定要进行初始化,否则就会出现意想不到的错误,如果不能找到对应地址赋值,那就赋给NULL(注意大写)。

5、gets可以 scanf办成办不成的事,就是可以接受空格,puts在最后会输出一个换行。