C++第4次实验(提高班)—函数 :项目1:数组素数排序

来源:互联网 发布:乔任梁死亡真相知乎 编辑:程序博客网 时间:2024/04/27 18:21

一.问题及代码

作    者:杨振宇

完成日期:2017 年 4月 10日

版 本 号:v1.0

对任务及求解方法的描述部分:将问题分为3个部分分别解答

输入描述:输入任意10个整数

问题描述:输入的整数是否是素数并进行排序

程序输出:是素数的整数并对其进行排序

问题分析:对是否素数进行判断,采用相应方法进行排序

算法设计:自定义一个函数进行是否素数的判断,然后用冒泡法进行排序

#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,k,m=0; 
    for(i=0;i<10;i++) 
    { 
        k=prime(a[i]);
  if(k==1)
  {
   b[j]=a[i];
   j++;
   m++;
  }
 }
    print(b,m);
    sort(b,m);
    print(b,m);  
    return 0; 
}
bool prime(int n)
{
 int m;
 for(m=2;m<n;m++)
 {
  if(n%m==0)
  {
   return 0;
   break;
  }
  else
  {
   return 1;
  }
 }
}
void print(int p[],int n)

 int i;
 cout<<2<<"\t";
 for(i=0;i<n;i++)
  cout<<p[i]<<"\t";
 cout<<endl;
}
void sort(int p[], int n)
{
 int j,i,t=0;
 for(i=1;i<n;i++)
 {
  for(j=n-1;j>=i;j--)
   if(p[j]<p[j-1])
   {
    t=p[j-1];
    p[j-1]=p[j];
    p[j]=t;
   }
 }
}
二.运算结果

三.心得体会

对于条件语句的应用更加得心应手;使用冒泡法对数据进行了排序,增强了对于冒泡排序法使用的熟练度,弥补了一些自己忽略的小漏洞。

四.知识点总结

对于自定义函数,除了注意函数中的形参以及实参以外,还要注意函数的类型是否符合你所需要的要求;对于某种条件的判断可以使用条件语句进行分析;对数据的排序可以使用冒泡排序法或者选择排序法进行编译。

0 0
原创粉丝点击