stand(time(NULL)); 应为srand(time(NULL));
是不是这样的呢?
程序代码:
#include "stdio.h"
#include "stdlib.h"
#include "time.h"
#include "math.h"
int f1(int x);
int main() {
int x,i;
srand(time(NULL));
for(i=1;i<=50;i++) {
x=rand()%201+300;
if(f1(x)) {
printf("%7d*",x);
}else{
printf("%d",x);
}
printf ("\n");
}
return 0;
}
int f1(int x) {
int a;
for(a=2;a<=(long)sqrt(x);a++){ //这里sqrt的结果或许很大, 还是用long吧
if(x%a==0) {
return 0;
}
}
return 1;
}
以下是引用其实、不想说在2011-4-2 23:14:21的发言:
还是运行不了,
运行结果,不知道是不是你需要的, 如果不是, 你就说出来你要什么!
root@~ #./1
316
314
423
486
438
389*
381
327
387
455
439*
434
337*
373*
338
390
320
347*
414
325
490
403
442
459
304
376
470
493
418
338
417
453
464
487*
399
335
420
457*
455
321
495
418
340
310
328
425
414
460
334
402
root@~ #
[
本帖最后由 ansic 于 2011-4-2 23:22 编辑 ]