⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1004.c

📁 hoj 部分题目解题报告 c,cpp或java语言描述
💻 C
字号:
/* This Code is Submitted by icycandy for Problem 1004 on 2008-11-10 at 09:05:41 */#include <stdio.h>/*ID:hrbwy1370451*/
#include <math.h>
/*
    函数功能:求回文质数
    函数入口参数:整形数A和B
    函数返回值:整形数num
*/

int main()                         /*主函数*/
{
    int m, n, o, p, q;
    int A, B, num;

    scanf ("%d %d", &A, &B);
    m = 0;n = 0;o = 0;p = 0;q = 0;
    while (m < 10)
    {
        q++;
        if (q == 10)
        {
            q = 0;
            p++;
        }

        if (p == 10)
        {
            p = 0;
            o++;
        }

        if (o == 10)
        {
            o = 0;
            n++;
        }

        if (n == 10)
        {
            n = 0;
            m++;
        }

        num = m*100000000+n*10000000+o*1000000+p*100000+q*10000+p*1000+o*100+n*10+m;
        while(num%10 == 0)
        {
            num=num/10;
        }
        if (Prime(num))                      /*如果满足Prime函数*/
        {
            if((num >= A)&&(num <= B))
            printf("%d\n", num);             /*输出回文质数 整形数num*/
            if ((num > 5)&&(num < 100)&&(num >= A)&&(num <= B))
            {
               printf("11\n");
            }
        }
    }
    return 0;
}
int Prime(int num)
{

    int a, b;
    int k;
    a = num%2;
    b = 3;
    k = sqrt(num);
    while (a&&b <= k)                /*直到a与b都小于等于k为止*/
    {
        a = num%b;
        b++;
    }
    return a;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -