找一缕阳光呀 2017-07-27 10:52 采纳率: 93.3%
浏览 779
已采纳

这个程序为什么运行不了,然而使用bool却可以,难道只能用boo吗???

#include
#include
int f(int x);
int main()
{
int n;
scanf("%d",n);
while(n--)
{
int t,i;
scanf("%d",&t);
if(f(t)==1)
{
printf("%d 0\n",t);
continue;
}
for(i=0;t-i!=0;i++)
{
if(f(t-i)==1)
{
printf("%d %d\n",t-i,i);
break;
}
if(f(t+i)==1)
{
printf("%d %d\n",t+i,i);
break;
}
}
}

return 0;

}
int f(int x)
{
int i;
if(x==0||x==1)
return 0;
else if(x==2)
return 1;
else
{
for(i=0;i<x;i++)
if(x%i==0)
return 0;
return 1;

}
}

  • 写回答

2条回答 默认 最新

  • shen_wei 2017-07-28 04:13
    关注
     int f(int x);
    int main()
    {
        int n;
        scanf("%d",&n);
        while(n--)
        {
            int t,i;
            scanf("%d",&t);
            if(f(t)==1)
            {
                printf("%d 0\n",t);
                continue;
            }
            for(i=0;t-i!=0;i++)
            {
                if(f(t-i)==1)
                {
                    printf("%d %d\n",t-i,i);
                    break;
                }
                if(f(t+i)==1)
                {
                    printf("%d %d\n",t+i,i);
                    break;
                }
            }
        }
        return 0;
    }
    int f(int x)
    {
        int i;
        if(x==0||x==1)
            return 0;
        else if(x==2)
            return 1;
        else
        {
            for(i=1;i<=x;i++)
                if(x%i==0)
                    return 0;
            return 1;
    
        }
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?