为什么大数的时候就会运行超时?

我这样写感觉没问题啊?为什么无法通过所有样例测试?数据大的时候就超时?

#include <stdio.h>

int zhishu(int a) //先定义一个判断质数函数

{

if(a<=1) return 0;

else for(int j=2;j<=a/2;j++)

{

if(a%j==0) return 0;

}

return 1;

} //返回值为0则不是质数,为1则是质数

int main()

{

int t,n,i;

int count=0;

scanf("%d\n",&t);

while(~scanf("%d\n",&n))

{

for(i=1;i<=n;i++)

{

int j=zhishu(i);//通过调用函数判断是否为质数

if(j==1) count++;//函数值1代表是质数,计数+1

}

printf("%d\n",count);//输出计数量

}

return 0;

}

全部评论

相关推荐

手撕没做出来是不是一定挂
Chrispp3:不会,写出来也不一定过
点赞 评论 收藏
分享
11-09 11:01
济南大学 Java
Java抽象带篮子:外卖项目真得美化一下,可以看看我的详细的外卖话术帖子
点赞 评论 收藏
分享
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
11-26 15:46
已编辑
字节国际 电商后端 24k-35k
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务