除1和本身以外不能被其他数整除的数(素数),随机产生10个素数输出,并按升序排序输出

#include 
#include 
#define N 10
 
void produceRandomNums(int nums[],int length,int startNum,int endNum);
void outputNums(int nums[],int length);
int isPrimeNums(int nums[]);
void bubblesort(int nums[],int length);

void produceRandomNums(int nums[],int length,int startNum,int endNum) 
{
     
	int i;
	
	srand((unsigned)time(NULL));
	for(i = 0;i < length;i++)
	{
     
		nums[i] = rand() % (endNum - startNum + 1) + startNum;
	}
	return;
}

//输出一个数组nums中的length个元素 
void outputNums(int nums[],int length)
{
     
	int i;
	
	for(i = 0;i < length;i++)
	{
     
		printf("%d\t",nums[i]);
	} 
	
	return;
} 
//筛选满足条件的数 

//判断num是否是素数,若是,返回1 ,否则返回0 
int isPrime(int nums)
{
     
	int i,flag = 1;
	
	for(i = 2;i < nums/2;i++)
	{
     
		if(nums % i == 0)
		{
     
			flag = 1;
			break;
		}
			
	}
	return 0;	
}
//从小到大排序,升序
void bubblesort(int nums[],int length)
{
     
	int i,j,temp;
	{
     
		for(i = 1; i < length ;i++)
		{
     
			for(j = 1; j < length ;j++)
			{
     
				if(nums[j-1] > nums[j])
				{
     
					temp = nums[j-1];
					nums[j-i] = nums[j];
					nums[j] = temp;
				}
			}
		}	
	}
	return ; 
}
int main(int argc, char *argv[]) {
     
	int nums[N],flag,i;
	 
	produceRandomNums(nums,N,1000,9999);
	outputNums(nums,N);
	printf("\n--------------------------\n");
	bubblesort(nums,N);
	outputNums(nums,N);
	printf("\n--------------------------\n");
	flag = isPrime(nums[i]); 
	if(flag == 1)
	{
     
		printf("是素数:%d",nums);
	}
	
	getch();
	return 0;
}

你可能感兴趣的:(素数+排序,c++)