#c语言 不同路径问题#

问题:

一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。

问总共有多少条不同的路径?#c语言 不同路径问题#

#include <stdio.h>
#include <stdlib.h>

//定义一个求组合的函数!

    int combination(int m, int n) {
        if(m > n)
            return combination(n, m);
        int i,j;
        long long result = 1;
        for (i = n,j = 1; j <= m - 1; i++, j++) {
               result=result*i/j;
        }
        return result;
    }
    
int main()
{
    int n,m;
    long long sum;
    printf("请输入网格规格m X n: ");
    //m n 输入用空格隔开!
    scanf("%d %d",&m, &n);
    sum=combination(m,n) ;
    printf("总共有%lld条路径!",sum);
    return 0;
}

有两个小问题,不知道为什么会有个报错,以及有时候输出负值

上一篇:Linux下运行memcached失败


下一篇:创建关系1