输入一个正整数n,判断n是否是素数。

输入
正整数n。
输出
如果n是素数,则输出yes,否则输出no。
样例输入
13
样例输出
yes

#include<stdio.h>

#include<math.h>

int zshu(int x)//判断x是不是素数。zshu代表素数,即质数。 

{

int i;

i=2;

if(x==2)//x是素数 。

return 1;

else if(x==1)//x不是素数 。

return 0;

else

{

while(i<x)

{

if(x%i==0)

{

break;

return 0;//x不是素数 。 

}

i++;

if(i>=x)

return 1;//x是素数 。   

}

}

int main()//主函数。 

{

int N;//N一个正整数N。 

scanf("%d",&N);

int a[1000];//定义数组,便于储存N个数。 

int j;

for(j=0;j<N;j++)

scanf("%d",&a[j]);

for(j=0;j<N;j++)

{

if(zshu(a[j])==1)

printf("Yes\n");//是素数。 

if(zshu(a[j])==0)

printf("No\n");//不是素数。 

}   

}

扩展资料:

scanf()函数用法:

输出的值只是空格前面的字符是因为scanf函数的输入格式错误,输入参数的变量前需要加&。

scanf("%s",s);改为scanf("%s",&s);

scanf的用法是:scanf("格式控制字符串",输入参数一,输入参数二);

格式控制字符串包含:格式控制说明,普通字符。

1、格式控制字符串表示输入的格式,(int型用%d,float用%f,double型用%lf)

2、普通字符:在输出数据的时候,按照原样输出的字符,如:"fahr=%d,celsius=%d\n"中的fahr=,celsius=。

3、输入的参数是变量的地址,所以要在变量前面加&。

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-11-25
#include <stdio.h>
int main()
{
int i,j,n;
n=scanf("%d",&i);
while( n != 0)//只要不输入0,就一直循环
{
for(j=2;j<=n/2;j++)
{
if(n%j==0) break;
if(j>n/2) printf("%d是素数",n);
else printf("%d不是素数",n);
n=scanf("%d",&i);
}
这是c语言的,估计你才开始学编程吧?本回答被网友采纳
第2个回答  2013-10-04
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
int m,n,k;
cout<<"请输入一个数:";
cin>>m;
k=sqrt(m);
for(n=2;n<k;n++)
if(m%n==0) break;
if(m<=k)
cout<<"No\n";
else
cout<<"Yes\n";
return 0;
}
第3个回答  2013-10-02
var n,j:longint;
f:boolean;
begin
readln(n);
j:=2;f:=true;
while (j<=trunc(sqrt(n)))and f do
if n mod j=0 then f:=false
else inc(j);
if f then writeln('yes') else writeln('false');
readln;
end.
第4个回答  2019-01-26
#include <stdio.h>
int main(void)
{
int i,n,a=0;
scanf("%d",&n);
for(i=2;i<n;i++)
{
if(n%i==0)
a=1;
}
if(a==0)
printf("Yes\n");
else
printf("No\n");
return 0;
}

输入一个正整数n,判断n是否是素数。
printf("No\\n");\/\/不是素数。} }

输入一个正整数n,判断n是否是素数。如果n是素数,则输出yes,否则输出no...
if(m<=k)这里应该是if(n<=k)吧……for(n=2;n<k;n++)这里改成for(n=2;n<=k;n++)

c语言编程:输入一个正整数n,判断它是否为素数
cout<<a<<"不是素数"<<endl;} return 0;}

输入一个正整数n,判断n是否是素数,若n是素数,输出”Yes”,否则输出”N...
No N0 ,字母o不要写成数字0

怎样判断一个数是不是素数?
1、选择一个正整数n,需要判断它是否为素数。2、检查n是否小于等于1。如果n小于等于1,那么它不是素数,因为素数的定义要求大于1。3、检查n是否等于2。如果n等于2,那么它是素数,因为2是素数中唯一的偶数素数。4、检查n是否为偶数。如果n是偶数且不等于2,那么它不是素数,因为所有大于2的偶数都不...

判断一个整数是否为素数
判断一个整数是否为素数如下:对于正整数N(N<1000000),如果N只能被1和N整除,则N为素数Q(质数),否则N为合数。例如:自然数7,只能被7(它自己)和1整除,所以7是素数。又如,自然数6,可以被1、2、3、6整除,所以6不是素数。整数:整数(integer)就是像0、1、2、3、-10、-1、-3、-10等...

求大神C++题:输入一个整数n,判断n是否是素数并输出。
bool prime(int n){ int i;if(n>2 && !(n&1) || n<2)return false;for(i=3; i*i<=n;i+=2)if(!(n%i)) return false;return true;} void main(void){ int n;cout << "Input an integer...\\nn=";cin >> n;if(prime(n)) cout << n << " is a primer...\\n";...

素数判断c语言
我们需要定义一个函数,这个函数接受一个整数n作为输入,返回一个布尔值表示n是否为素数。在函数内部,我们需要进行一次判断。如果n小于等于1,那么它就不是一个素数,返回false。如果n大于1,我们需要计算n的所有正整数因数。可以通过循环从2到n的平方根来找到这些因数。统计n的所有因数的个数。如果因数...

C语言编程判断输入的正整数是否为素数。
因为输入的不止一个数,开头的初始化g=0,在第一个数的时候就可能已经被改了。后面的数不重新初始化g=0,就不能保证对了。判断一个正整数n是不是素数的思路:思路1):因此判断一个整数m是否是素数,只需把 m 被 2 ~ m-1 之间的每一个整数去除,如果都不能被整除,那么 m 就是一个素数...

键盘输入一个正整数,程式设计判断其是否为素数(即质数)
c#从键盘输入一个正整数,判断该数是不是素数(质数)intisPrime(intnum){ if(num<=1)return-1;elseif(num==2)return1;else{ for(i=2;i<=Math.Sqrt(num);i++){ if(num%i==0)return0;} return1;} } 输入一个正整数n,判断n是否是素数。#include<stdio.h> intmain(){ inti,j,n;...

相似回答