一,问题及代码:
/*
* 文件名称: 数组素数排序
* 作 者: 张轩哲
* 完成日期: 2016年06月2日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:数组素数排序
* 输入描述: 无
* 问题描述:
* 程序输出:
* 问题分析: 简单
* 算法设计: 函数的多次调用
*/
#include <iostream>
void sort(int p[10],int n);
bool prime(int x);
void print(int p[10],int n);
int main( )
{
int a[10]={2,13,5,47,19,53,27,23,28,11};
int b[10],i;
int j=0;
for(i=0;i<10;i++)
{
if(prime(a[i]))
b[j++]=a[i];
}
print(b,j);
sort(b,j);
print(b,j);
return 0;
}
void sort(int p[10], int n)
{
int i,j,t;
for(i=0;i<n-1;i++)
{
for(j=0;j<n-1-i;j++)
{
if(p[j]>p[j+1])
{
t=p[j];
p[j]=p[j+1];
p[j+1]=t;
}
}
}
}
void print(int p[10],int n)
{
int i;
for(i=0;i<n;i++)
std::cout<<p[i]<<" ";
std::cout<<"\n";
}
bool prime(int x)
{
int i;
if(x<2) return false;
if(x==2) return true;
for(i=2;i*i<=x;i++)
{
if(x%i==0)
return false;
}
return true;
}
二,运行结果:
三,心得体会:
函数还有很多要学的
四,知识点总结:
运行函数前要先申明。