编程实现:
从键盘输入一个正整数,判断该数是不是素数。若是,请输出“此数是素数!”,若不是,请输出“此数不是素数!”。若输入的数据不是正整数,请输出“您输入的数据不符合要求,请重新输入!”
void main()
{
int n;
printf("请输入一个正整数:");
while(1)
{
scanf("%d",&n);
if(n<= 0)
{
printf("您输入的数据不符合要求,请重新输入!\n");
continue;
}
break;
}
for(int i=2;i*i<=n;i++)
{
if(n%i==0)
{
prinf("此数不是素数!");
return;
}
}
printf("此数是素数!");
}
#include <stdio.h>
int main()
{
int a=0; // 素数的个数
int num=0; // 输入的整数
printf("输入一个整数:");
scanf("%d",&num);
if (num>0)
{
for(int i=2;i<num;i++){
if(num%i==0){
a++; // 素数个数加1
}
}
if(a==0)
{
printf("%d是素数。\n", num);
}
else
{
printf("%d不是素数。\n", num);
}
}
else
printf("您输入的数据不符合要求,请重新输入!");
return 0;
}
//用户输入一个数,判断是否为素数,素数:只能被1和它本身整除的数(while、for实现) break;
int main()
{
int a,i;
int flag = 1;
printf("请输入一个数:");
scanf("%d",&a);
//判断是否为素数
for(i=2;i<a;i++){ //排除1和a本身
if(a % i == 0){ //能整除
flag = 0;
//终止循环
break;
}
}
if(flag){
printf("%d是素数",a);
}else{
printf("%d不是素数",a);
}
}
#include <stdio.h>
int isprime( int n);
int main()
{
int n;
printf("输入一个整数:");
scanf("%d", &n);
if( isprime(n)){
printf("此数是素数!");
} else {
printf("此数不是素数!");
}
return 0;
}
int isprime(int n)
{
int i;
if(n<=3) return n>1;
for(i=2;i*i<=n;i++)
if(n%i==0) return 0;
return 1;
}