c语言判断两个数之间的素数

#include <stdio.h>
int main()
{
int a,b,c,x,i,j=0;
printf("请输入两个整数a,b:");
scanf("%d%d",&a,&b);
if(a>b)
c=a;a=b;b=c;
for(x=a;x<=b;x++)
{
for(i=1;i<=x;i++)
{
if(x%i==0)
{
j++;
}
}
if(j==2)
{
printf("%d",x);
}
}
return 0;
}
哪里出错了,求解

#include<stdio.h>  

intmain()  

{  

inta,b;  

printf("pleaseinputtwonumbers\n");  

scanf("%d%d",&a,&b);  

prime(a,b);  

return0;  

}  

intprime(intx,inty)  

{  

inti,j,k,cout;  

cout=0;  

for(i=x;i<=y;i++)  

{  

k=1;  

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

{  

if(i%j==0)  

{  

k=0;  

break;  

}  

}  

if(k)  

{  

printf("%d\n",i);  

cout++;  

}  

}  

printf("thereare%dnumbersfrom%dto%d\n",cout,x,y);  

return0;  

}

扩展资料:

C语言基本特性

1、高级语言:它是把高级语言的基本结构和语句与低级语言的实用性结合起来的工作单元。

2、结构式语言:结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。

这种结构化方式可使程序层次清晰,便于使用、维护以及调试。C 语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。

参考资料来源:百度百科-c语言

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-11-13

#include<stdio.h>

#include<stdlib.h>

intmain()

{

inta;

voidBegin();

voidEnd();

while(1)

{

printf("想知道两个数之间有多少个素数?\n"

"*****************\n"

"*输入1开始程序*\n"

"**\n"

"*输入2结束程序*\n"

"*****************\n");

scanf("%d",&a);

switch(a)

{

case1:Begin();break;

default:End();

}

}

return0;

}

voidBegin()

{

inta,b,i,j,n=0;

printf("******************\n"

"*请输入第一个数*\n"

"******************\n");

scanf("%d",&a);

printf("******************\n"

"*请输入第二个数*\n"

"******************\n");

scanf("%d",&b);

printf("\n在%d到%d之间的素数有:\n\n",a,b);

for(i=a;i<=b;i++)

{

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

{if(i%j==0)break;}

if(i==j)

{

n++;

printf("%-5d",i);

if(n%5==0)printf("\n");

}

}

printf("\n\n共:%d个\n\n",n);

}

voidEnd()

{

printf("谢谢使用,按任意键结束程序\n");

exit(0);

}

扩展资料

C语言求素数

#include<stdio.h>

#include<math.h>

voidmain(){

intm;//输入的整数

inti;//循环次数

intk;//m的平方根

printf("输入一个整数:");

scanf("%d",&m);

//求平方根,注意sqrt()的参数为double类型,这里要强制转换m的类型

k=(int)sqrt((double)m);

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

if(m%i==0)

break;

//如果完成所有循环,那么m为素数

//注意最后一次循环,会执行i++,此时i=k+1,所以有i>k

if(i>k)

printf("%d是素数。\n",m);

else

printf("%d不是素数。\n",m);

return0;

}

本回答被网友采纳
第2个回答  推荐于2017-12-16
#include <stdio.h>
int main()
{
int a,b,c,x,i,j=0;
printf("请输入两个整数a,b:");
scanf("%d%d",&a,&b);
if(a>b)
{//这里加大括号
c=a;a=b;b=c;
}
for(x=a;x<=b;x++)
{
j = 0;//每次判断前 j复位
for(i=1;i<=x;i++)
{
if(x%i==0)
{
j++;
}
}
if(j==2)
{
printf("%d ",x);//加了一个空格 看的清楚一些
}
}
return 0;
}

本回答被提问者采纳
第3个回答  2019-01-09
//输出指定两个数据范围之间的所有素数
#include<stdio.h>
int main()
{
int a,b,tmp,i,k,flag;
printf("请输入数据范围:",a,b);
scanf("%d,%d",&a,&b);
if(a>b)
{
tmp=a;
a=b;
b=tmp;
}
for(k=a;k<=b;k++)
{
flag=1;
for(i=2;i<k-1;i++)
if(k%i==0)flag=0;
if(flag==1&&k!=1)printf("%d\t",k);
}
printf("\n");
printf("以上为%d到%d之间所有的素数\n",a,b);
}
第4个回答  2015-05-14
if(a>b)
c=a;a=b;b=c;
用大括号括起来