c++--作业7

来源:互联网 发布:农村淘宝招募报名入口 编辑:程序博客网 时间:2024/05/16 01:25

1,求最大公约数和最小公倍数

#include<iostream.h>  int b;                                                       //最小公倍数  int fun(int m,int n,int x)                                     //计算函数  {      int k;      k=m%n;      while(k)                                                   //求最大公约数      {          m=n;          n=k;          k=m%n;      }      b=x/n;                                                   //最小公倍数=两数之积/最大公约数      return n;                                                  //返回最大公约数  }  void main()  {      int m,n,y;      cout<<"请输入两个整数:";      cin>>m>>n;      y=fun(m,n,m*n);                                          //取最大公约数      cout<<"最大公约数是"<<y<<",最小公倍数是"<<b<<endl;  }  

2,数组素数排序

#include<iostream>  using namespace std;  int f(int x)  {     int i,a=0;     for(i=2;i<x;i++)      {if(x%i==0) break;}  if(i==x) {a=1; return a;}  }  void y(int p[], int n)  {      int i,j,temp;      for(i=0;i<n-1;i++)          for(j=0;j<n-1-i;j++)          if(p[j]>p[j+1])      {          temp=p[j];          p[j]=p[j+1];          p[1+j]=temp;      }  }  int main()   {     int a[10]={2,13,5,47,19,53,27,23,28,11},b[10],k,q=0,i,g;     for(k=0;k<10;k++)     {         if(f(a[k])==1)         {             b[q]=a[k];             q++;         }     }     for(i=0;i<q;i++)      cout<<b[i]<<" ";      cout<<endl<<"b数列为:";      y(b,q);       for(i=0;i<q;i++)      cout<<b[i]<<" ";   }  



0 0