Manchester


私信TA

用户名:wenyajie

访问量:314096

签 名:

在历史前进的逻辑中前进,这个逻辑就是人心向背的逻辑

等  级
排  名 1
经  验 62924
参赛次数 1
文章发表 188
年  龄 0
在职情况 学生
学  校 Xiamen University
专  业 计算机科学

  自我简介:

在历史前进的逻辑中前进,这个逻辑就是人心向背的逻辑

解题思路:
素数指在一个大于1的自然数中,除了1和此整数自身外,没法被其他自然数整除的数。

1.输入一个数number,若number为大于一的自然数,判断它是否为素数;

2.number为大于一的小数,不是素数;

3.number小于等于1,不是素数;


参考代码:

#include <stdio.h>
 
int main()
{
    double    number;
    int    i;
    scanf( "%lf", &number );
 
    if ( number > 1 && number == (int) number ) //大于1的自然数
    {
        for ( i = 2; i < number; i++ )
        {
            if ( (int) number % i == 0 )
            {
                printf( "not prime" );
                break;
            }
        }
        if ( i == number )
            printf( "prime" );
    }
    if ( number>1&&(int) number != number )  //大于一的小数
        printf( "not prime" );
 
    if ( number <= 1 )   //小于等于一的数
        printf( "not prime" );
 
    return(0);
}


 

0.0分

44 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区

#include <stdio.h>
void f(int n)
{
    int i=2;
    for(i=2;i<n;i++)
    {
        if(n%i==0&&n!=2)
        printf("not prime");
        else 
        printf("prime\n");
    }
    if(n==2)
    printf("prime");
} 
int main()
{
    int a;
    scanf("%d",&a);
    f(a);
    return 0;
}
大佬们,问一下为什么出来一串prime啊。裂开
2023-11-30 13:23:21
#include <stdio.h>
void JudgePrime(int n)
{
	int i = 2;
	while (n % i)
	{
		i++;
	}
	if (i == n)
	{
		printf("prime\n");
	}
	else
	{
		printf("not prime\n");
	}
}

int main()
{
	int num = 0;
	scanf("%d", &num);
	JudgePrime(num);
	return 0;
}
2023-05-02 23:30:36
请问( i == number )这个是什么意思啊?这个的作用是什么?
2023-03-18 21:01:54
int main(){
	int a,count=0;
	scanf("%d",&a);
	for(int i=1;i<=a;i++){
		if(a%i==0){
			count++;
		}
	}
	if(count==2){
		printf("prime");
	}else {
		printf("not prime");
	}
}
2022-03-06 21:20:01
#include <stdio.h>

void f(double x);
int main(void)
{
	double x;
	scanf("%lf",&x);
	f(x);
	return 0;
}
void f(double x)
{
	int i,count=0;
	if(x<0||x!=(int)x) goto L1;
	for(i=1;i<=(int)x;i++)
	{
		if((int)x%i==0) count++;
	}
	if(count==2) printf("prime");
	else L1:printf("not prime");
	return;
}
2022-02-22 14:44:38
这是错的,输入121出来的是not。
2022-02-17 16:24:35
楼主考虑的好全面啊,我也加上负数了
#include<stdio.h>

void panduan(int b);

void panduan(int b)
{
    int i,count=0;
    for(i=2;i<b;i++)
    {
        if(b%i==0)
        {
            count++;
        }
    }
    if(count==0)
    {
        printf("prime");
    }
    else
    {
        printf("not prime");
    }
}
int main()
{
    int a;
    scanf("%d",&a);
    if(a>1)
    {
        panduan(a);
    }
    else
    {
        printf("not prime");
    }
    return 0;
}
2022-01-29 22:12:12
#include<stdio.h>

void panduan(int b);

void panduan(int b)
{
    int i,count=0;
    for(i=2;i<b;i++)
    {
        if(b%i==0)
        {
            count++;
        }
    }
     printf("%d",count);
    if(count==0)
    {
        printf("prime");
    }
    else
    {
        printf("not prime");
    }
}
int main()
{
    int a;
    scanf("%d",&a);
    panduan(a);
    return 0;
}
2022-01-29 22:04:36