您的位置:首页 > 其它

第七次上机(上机)

2016-06-05 22:52 246 查看
一、数组素数排序

定义一个有10个的数组a,将数组a中的所有素数放在数组b,再对数组b排序。
/*
* 文件名称:c++第七次实验(复习)——函数.cpp
* 作 者:郭宇辉
* 完成日期:2016年 6 月 5 日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:根据外部的函数完成编写。
* 输入描述:无
* 问题描述:
* 程序输出:略
* 问题分析:略
* 算法设计:略
*/
#include <iostream>
using namespace std;
void sort(int p[], int n); //数组排序
bool prime(int x); //素数判断
void print(int p[],int n);//输出数组
int main( )
{ int a[10]={2,13,5,47,19,53,27,23,28,11};
int b[10],i,j=0;
for(i=0;i<10;i++)
{
//将a中的素数存入b数组
if(prime(a[i])) {b[j]=a[i];j++;} //可以写成 b[j++]=a[i];

}
print(b,j); //输出排序前的b数组
sort(b,j); //对数组b排序
print(b,j); //输出排序后的b数组
return 0;
}
//下面定义自定义函数
bool prime(int x) //素数判断
{
int i;
if(x==1) return false;
for(i=2;i*i<x;i++)
{
if(x%i==0) return false;
}
return true;
}
void print(int p[],int n) //输出数组
{
int i;
for(i=0;i<n;i++)
{
cout<<p[i]<<" ";
}
cout<<endl;
}
void sort(int p[], int n) //数组排序
{
int i,j,k=0;
for(i=0;i<=n;i++)
{
for(j=0;j<n-i-1;j++)
{
if(p[j]>p[j+1])
{
k=p[j];
p[j]=p[j+1];
p[j+1]=k;
}
}
}
}二、运行结果



三、心得与体会

对函数以及冒泡发有进一步的理解

四、知识点总结

定义函数-局外

使用函数,注意格式
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: