敲键盘 尽量 让程序出乱码 .........然后寻找原因.........
哎 时间....................
这是我的看法。
#include <stdio.h>
#include <math.h>
void main()
{
int i,n;
int temp=0;
printf("Enter the number:");
scanf("%d",&n);
for (i=2;i<(int) sqrt(n);i++)
{
if (n%i==0)
temp=0;
else
temp=1;
}
if (temp)
printf("%d is the temp!\n",n);
else
printf("%d is not the temp!\n",n);
}
这里我弄错了,应该是if (!temp)
是这样的吗?我觉得这样效率还要高点
你知道sqrt函数中怎么运行的吗?可能比你想像的还要复杂!
我承认sqrt函数的效率并不高,但是请你注意,我在程序中只用了1次这个函数,牺牲的时间是有限且固定的!
可是如果乘法在循环体,那么消耗的时间是根据N增长的!
你自己去想想哪个更划算!