参考程序: #include <iostream. h aint cout<<"这批桃子原先共有"<<f()<"个n” int f(int n)i if(n==10 else return 2*f(n+1)+2: int fac(int a) cout<<"请输入n的值:"; int fac(int a)t return(a==0)?1: a*fac(a-D) 3 #include <iostream. h t gcd(int a, int b) int Icm(int a, int b, int h) cout<<"请输入两个正整数:"; h=gcd(x, y); v h
参考程序: 1. #include <iostream.h> int f(int n); void main(){ cout<<"这批桃子原先共有"<<f(1)<<"个\n"; } int f(int n){ if(n==10)return 1; else return 2*f(n+1)+2; } 2. #include <iostream.h> int fac(int a); void main(){ int n; cout<<"请输入 n 的值:"; cin>>n; cout<<n<<"!="<<fac(n)<<'\n'; } int fac(int a){ return(a==0)?1:a*fac(a-1); } 3. #include <iostream.h> int gcd(int a,int b); int lcm(int a,int b,int h); void main(){ cout<<"请输入两个正整数:"; int x,y,h,l; cin>>x>>y; h=gcd(x,y); l=lcm(x,y,h);
cou<x<"和"<y<<"的最大公约数是"<<h<<n cou<<x<"和"<<y<"的最小公倍数是:"<<lk<n int gcd(int a, int b)f Int r, temp if(a<b)( Int temp=a, b=temp. while((r=a%b)=0) turn b int Icm(int a, int b, int h)i return(a*b/h) 法二 #include <iostream int gcd(int, int) int lcm(int, int) void maino cout<<"请输入两个正整数:"; cou<<"a="<<a<<t'<<"b="<<b<<n g=gcd(a, b); =Icm(a, b) cout<<a<<"和"<<b<<"的最大公约数为:"<<g<<n cout<<a<"和"<<b<"的最小公倍数为:"<4<n int gcd(int a, int b)
cout<<x<<"和"<<y<<"的最大公约数是:"<<h<<'\n'; cout<<x<<"和"<<y<<"的最小公倍数是:"<<l<<'\n'; } int gcd(int a,int b){ int r,temp; if(a<b){ int temp=a; a=b; b=temp; } while((r=a%b)!=0){ a=b; b=r; } return b; } int lcm(int a,int b,int h){ return(a*b/h); } 法二: #include <iostream.h> int gcd(int,int); int lcm(int,int); void main() { int a,b,g,l; cout<<"请输入两个正整数:"; cin>>a>>b; cout<<"a="<<a<<'\t'<<"b="<<b<<'\n'; g=gcd(a,b); l=lcm(a,b); cout<<a<<"和"<<b<<"的最大公约数为:"<<g<<'\n'; cout<<a<<"和"<<b<<"的最小公倍数为:"<<l<<'\n'; } int gcd(int a,int b)
f(a.oi)‖(b%) return I return I int lcm(int a, int b) while(i%a)i+=b return(i) 4. #include <iostream. h> int max(int x, int y); double max(double x, double y); double max( double x, double y, double z) void main(i int a b double x1 x2 cou<<"输入两个整数: cout<"max("<a<<","<<b<<")="<<max(ab}<n; cou<<"输入两个实数: cn>>x1>>X2 cout<<"max(<<xI< x2<<")="<<max(xlx2)<<mh cou<<"输入三个实数 cin>>xI>>x2>>X cou<max("<xl<","<x2<","<x3<<")="<<max(x1,x2x3)<<mn' int max(int x, int y)t return x-Y
{ int i; for(i=a;i>=1;i--) if(!((a%i)||(b%i))) return i; return 1; } int lcm(int a,int b) { int i; i=b; while(i%a)i+=b; return(i); } 4.#include <iostream.h> int max(int x,int y); double max(double x,double y); double max(double x,double y,double z); void main(){ int a,b; double x1,x2,x3; cout<<"输入两个整数:"; cin>>a>>b; cout<<"max("<<a<<","<<b<<")="<<max(a,b)<<'\n'; cout<<"输入两个实数:"; cin>>x1>>x2; cout<<"max("<<x1<<","<<x2<<")="<<max(x1,x2)<<'\n'; cout<<"输入三个实数:"; cin>>x1>>x2>>x3; cout<<"max("<<x1<<","<<x2<<","<<x3<<")="<<max(x1,x2,x3)<<'\n'; } int max(int x,int y){ return x>=y?x:y;