求助
  • 板块灌水区
  • 楼主Zebraj
  • 当前回复13
  • 已保存回复13
  • 发布时间2024/8/24 22:41
  • 上次更新2024/8/25 10:34:12
查看原帖
求助
1277913
Zebraj楼主2024/8/24 22:41

同时判断回文,思路上也没问题,为什么注释的方发WA了?第一种方法 和 第二种方法

#include <stdio.h>
#include <math.h>
int sushu (int n)
{
    if(n==2) return 1;
    if(n%2==0) return 0;
    for(int i=2;i<=sqrt(n);i++)
    {
        if(n%i==0) return 0;
    }
    return 1;
}
int huiwen (int n)
{
    //采用数组,进行数组元素的比较
    int a[12];
    int flag=1;
    while(n>0)
    {
        a[flag]=n%10;
        n/=10;
        flag++;
    }
    for(int i=1;i<=flag/2;i++)
    {
        if(a[i]!=a[flag-i]) return 0;
    }
    return 1;
    //进行数字反转,绕后将反转数与原数比较
    /*
    int sum=0;
    while(n!=0)
    {
       sum=sum*10+n%10;
       n=n/10;
    }
    if(sum==n) return 1;
    else return 0;
    */
}
int main ()
{
    int a,b;
    scanf("%d %d",&a,&b);
    for(int i=a;i<=b;i++)
    {
        if(i==9989900) break;
        if(huiwen(i)&&sushu(i))
        printf("%d\n",i);
    }
}
2024/8/24 22:41
加载中...