原题链接:[编程入门]自定义函数处理素数
解题思路:
素数指在一个大于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分
35 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
 
#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啊。裂开#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; }@最佳皮蛋 int a, num=0; scanf("%d", &a); for (int i=1;i <= a; i++;) { if (a % i == 0) { num++; } } if (num > 2) { printf("%d不是一个素数",a); } else { printf("%d是一个素数"',a);}为什么我的一直报错?