C++第7次实验—作业

来源:互联网 发布:pkpm软件多少钱 编辑:程序博客网 时间:2024/06/05 21:09

项目1:数组素数排序

定义一个有10个的数组a,将数组a中的所有素数放在数组b,再对数组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++)//将a中的素数存入b数组    {        if(prime(a[i])) b[j++]=a[i];    }    print(b,j); //输出排序前的b数组    sort(b,j);   //对数组b排序    print(b,j);   //输出排序后的b数组    return 0;}bool prime(int x){if(x==1)return false;for(int i=2;i*i<=x;i++){if(x%i==0) return false;}return true;}void print(int p[],int n){for(int i=0;i<n;i++)        cout<<p[i]<<" ";    cout<<endl;}void sort(int p[],int n){for(int i=0;i<n-1;i++)for(int j=0;j<n-i-1;j++){if(p[j]>p[j+1]){    int t=p[j+1];                p[j+1]=p[j];                p[j]=t;}}}


项目2:奇偶阶乘

定义一个有10个的数组a,输出数组a中所有的奇数的阶乘和和偶数的阶乘和。其中将奇偶数的判断和阶段的计算定义为函数。


#include <iostream>using namespace std;int jiec(int x){    if(x==1) return 1;    return x*jiec(x-1);}bool jis(int x){    if(x%2) return 1;    return 0;}int main(){    int a[10]={1,2,3,4,5,6,7,8,9,10};    int jsum=0,osum=0;    for(int i=0;i<10;i++)    {        if(jis(a[i])) jsum+=jiec(a[i]);        else osum+=jiec(a[i]);    }    cout<<"奇数阶乘和:"<<jsum<<endl;    cout<<"偶数阶乘和:"<<osum<<endl;    return 0;}


项目3:杨辉三解

编写函数,形成n阶杨辉三角形。在主函数中调用该函数,形成杨辉三角形,并输出结果。输入阶数n,输出处理后的结果。

#include <iostream>using namespace std;int yang(int a[][10],int n){    for(int i=0;i<n;i++)    {        for(int j=0;j<=i;j++)        {            if(j==0||j==i) a[i][j]=1;            else a[i][j]=a[i-1][j-1]+a[i-1][j];        }    }}int main( ){    int a[10][10];    int n;    cin>>n;    yang(a,n);    for(int i=0;i<n;i++)    {        for(int j=0;j<=i;j++)        {            cout<<a[i][j]<<"\t";        }        cout<<endl;    }    return 0;}



1 0