入门问题!!!找下错,运行结果有问题!!
#include "stdio.h"#include "stdlib.h"
#include "math.h"
#include "time.h"
void output( int a[]);
void is_prime( int a[]);
void sort_prime( int a[]);
main()
{
int a[100];
output(a);
is_prime(a);
sort_prime(a);
getch();
}
void output( int a[])
{
int i;
srand(time(NULL));
for ( i = 0; i < 100; i++);
{
a[i] = rand() % (5000 - 1000 + 1) + 1000;
printf("%8d", a[i]);
}
printf("\n");
}
void is_prime(int a[])
{
int i, j, flag;
for ( i = 1; i < 100; i++)
{
flag = 1;
for ( j = 2; j <= (int)sqrt(a[i]); j++)
{
if( a[i] % j == 0)
{
flag = 0;
break;
}
}
if(flag == 1)
{
printf("%8d", a[i]);
}
}
printf("\n");
}
void sort_prime( int a[])
{
int i, j, min, temp;
for ( i = 0; a[i] < 1000; i++)
{
min=i;
for(j = 1; a[i] < 1000; j++)
{
if( a[min] > a[j] )
{
temp = a[min];
a[min] = a[j];
a[j] = temp;
}
}
}
for ( i = 0; a[i] < 1000; i++)
{
printf("%8d", a[i]);
}
}
题目是随机产生1000—5000之间的100个数,找出100数之间的素数输出,再排序素数输出!我用的是TC 2.0