大佬们,这个超时怎么解决啊
回答:首先,咱去换一下等宽字体 Cosolos,不然这样看着太不人性化了;
感觉这程序有点抽象啊,咱判断素数,判断到 根号,是可以,但是为啥要传入两个参数啊,我找了一个简单的素数个数的代码,如下:
#include <stdio.h>
#include <math.h>
int main()
{
int m; // 输入的整数
int i; // 循环次数
int k; // m 的平方根
printf("输入一个整数:");
scanf("%d", &m);
// 求平方根,注意sqrt()的参数为 double 类型,这里要强制转换m的类型
k = (int)sqrt((double)m);
for (i = 2; i <= k; i++)
if (m % i == 0)
break;
// 如果完成所有循环,那么m为素数
// 注意最后一次循环,会执行i++,此时 i=k+1,所以有i>k
if (i > k)
printf("%d是素数。\n", m);
else
printf("%d不是素数。\n", m);
return 0;
}
我觉得你程序大体没有问题,只是想得到两个数范围内的素数个数,然后输出个数,你可以在这个程序的基础上进行修改