补c++第四次实验

来源:互联网 发布:她理财是真是假 知乎 编辑:程序博客网 时间:2024/06/06 05:28
/*  
* 文件名称:Ex1-1.cpp  
* 作    者:包裕波 
* 完成日期:2017 年 5 月 8日  
* 版 本 号:v1.0  
* 对任务及求解方法的描述部分: 
* 输入描述:无  
* 问题描述:根据题意,完成子函数
* 程序输出:排序前后的b数组 
* 问题分析:略 
* 算法设计:略  
*/    
#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++)  

    {  

prime(a[i]);

if(prime(a[i])==1)

{

b[j++]=a[i]; 
//将a中的素数存入b数组  

}

}  

    print(b,j); //输出排序前的b数组    

    sort(b,j);   //对数组b排序  

    print(b,j);   //输出排序后的b数组     

    return 0;  




bool prime(int x)


{

int m,n;

n=1;

for(m=2;m<x;m++)

{

if (x%m==0)

{

n=0;

}

}

return n;

}


void print(int p[],int n)


{

int m;

for (m=0;m<n;m++)

{

cout<<p[m]<<" ";

}

cout<<endl;

}


void sort(int p[], int n)


{

int  i,j,t;

for(i=1;i<n;i++)

for(j=0;j<n-i;j++)

{

if(p[j]>p[j+1])

{t=p[j];p[j]=p[j+1];p[j+1]=t;}

}

}




/*  
* 文件名称:Ex1-1.cpp  
* 作    者:包裕波 
* 完成日期:2017 年 5 月 8 日  
* 版 本 号:v1.0  
* 对任务及求解方法的描述部分: 
* 输入描述:无  
* 问题描述:奇偶阶乘 
* 程序输出:略
* 问题分析:略 
* 算法设计:略  
*/ 
#include<iostream>  
using namespace std;    
int fun1(int p[],int n);
int fun2(int x);  
int main()  
{  
    int a[10],b[10],c[10],i,j=0,k=0,m;  
    cout<<"请输入十个整数:";  
    for(i=0;i<10;i++)  
    {  
        cin>>a[i];  
    }  
    for(i=0;i<10;i++)  
    {  
m=a[i];
         if(fun2(m))  
             b[j++]=a[i];  
         else 
c[k++]=a[i];  
    }  
    cout<<"奇数的阶乘为:"<<fun1(b,j-1)<<endl;  
    cout<<"偶数的阶乘为:"<<fun1(c,k-1)<<endl;    
    return 0;  
}  
int fun2(int x)  
{
int n=1;
    if(x%2==0)  
n=0;
        return n;  
}  
int fun1(int p[],int n)  
{  
    int i,j,k,num=0;  
    for(i=0;i<n;i++)
{
k=1;
for(j=p[i];j>0;j--)
{
k*=j;
}
num+=k;
}      
    return num;   
}     



0 0
原创粉丝点击