听不懂老师上课讲的,感觉什么都不会,有没有人可以讲一下

  1. c++,用函数方法求三个数中最小的一个数。
  2. c++,用递归的方法求n的阶层。
    有没有大神可以讲一下过程,感觉听不懂老师讲

刚写成求最大的了:
最小的这样:

#include <iostream>
using namespace std;
int main()
{
    int a=0,b=0,c=0,min;
    cin>>a>>b>>c;//输入三个数 
    if(a<b)
        min=a; //先任意比较其中两个,把小的那个数赋值给min 
    else       //然后min就成了 a,b中较小的那个 
        min=b;
    if(min>c) //接下再用 min和第三个数比较,如果第三个数比min小 
        min=c;//就把第三个数的值给min
    cout<<min; //输出最小的数min
    return 0;
}

或者:

#include <iostream>
using namespace std;
int main()
{
    int a=0,b=0,c=0,min;
    cin>>a>>b>>c;//输入三个数 
    min=a<b?a:b; //利用三目运算符得到较小值 
    min=min<c?min:c;
    cout<<min<<endl;
    return 0;
}

1.如下,最基础的方法,挨个比较

#include <iostream>
using namespace std;
int main()
{
    int a=0,b=0,c=0,max;
    cin>>a>>b>>c;//输入三个数 
    if(a>b)
        max=a; //先任意比较其中两个,把大的那个数赋值给max 
    else       //然后max就成了 a,b中较大的那个 
        max=b;
        
    if(max<c) //接下再用 max和第三个数比较,如果第三个数比max大 
        max=c;//就把第三个数的值给max 
        
    cout<<max; //输出最大的数max 
    return 0;
}

或者:

#include <iostream>
using namespace std;
int main()
{
    int a=0,b=0,c=0,max;
    cin>>a>>b>>c;//输入三个数 
    max=a>b?a:b; //利用三目运算符得到较大值 
    max=max>c?max:c;
    cout<<max<<endl;
    return 0;
}

2.如下:

#include <iostream>
#include <cstdio>
using namespace std;
double fact(int num)
{
    if(num==0 || num==1) //1或者0的阶乘为1
        return 1;         //这个确定的结果是递归的终止
    else if(num>=2)      //递归公式:fact(n)=n*fact(n-1) 
        return num*fact(num-1);
        
}
int main()
{
    int n=0;
    cin>>n;
    printf("%d的阶乘为:%.0lf",n,fact(n));
    return 0;
}

函数方法就
写个函数,传入三个值,在函数中做判断,输出最小的值
函数内部你可以两两比较,较小值在和第三个数比较,最终目的就是输出一个最小值,内部写法可以很多样
递归求阶乘就是说f(n)=n*f(n-1),这里f(n-1)就是n-1的阶乘,在外部你可以将其视作一个值,在函数内部,f(n-1)=(n-1)*f(n-2),这样一次递推下去,最终拿到f(1)=1,再逐层传递出来
有帮助望采纳

1、可以看我的这篇,用三目运算求最大最小 三目运算符求三个数中最大、最小、中间值_small_planet的博客-CSDN博客 c中只有一个三目运算符,也就是说看完我这篇博客就把c中所有的三目运算符都掌握了,哈哈公式:表达式1>表达式2?表达式3:表达式4 a>b?a:b 等价于:if(a>b) return a;else if(a<b) return b;表达式3和表达式4可以是任何东西。如:a>b?5:6 也是可以的上面的内容掌握后,下面用三目运算符求最大最小就很容易够以理解了。#include<stdio.h>... https://blog.csdn.net/small_planet/article/details/108333563?spm=1001.2014.3001.5501
2、

#include<iostream>
using namespace std;
int jiecheng(int n)
{
    if (n == 1)   //递归的结束条件,一定要有
    {
        return 1;
    }
    else      
    {
        return n*jiecheng(n - 1);
    }
}
int main()
{
    int n;
    cin >> n;
    cout << n << "!= " << jiecheng(n);

}

递归可以用栈来理解,后进先出