求从n个不同整数中取出r个整数的组合数?

求从n个不同整数中取出r个整数的组合数?,第1张

求从n个不同整数取出r个整数的组合数? 算法练习

问题
求从n个不同整数中取出r个整数的组合数?


解题思路

定义两个整型数n和r,从键盘输入两个数给n和r,n保存整数个数,r为需要从n个整数中取出的元素个数;n和r必须大于0且n必须大于r。

//从n个不同整数中取出r个整数的组合数
int combination(int n, int r)
{
	int sum=0;
	if(r>n || r<0 || n<0)
	{
		printf("Input Error!n");

	}
	else
	{
		if(1 == r)
		{
		    return n;	
		}
		else
		{
			for(; n >= r; n--)
            {
                sum += n-r +1;
            }
		}
        
	}

	return sum;
}

int main()
{
	int n, r;
	do{
        printf("请输入数字,以空格隔开:n");
	    scanf("%d %d", &n ,&r);
	    printf("%d个不同整数的%d个整数组合数是:%d。nn", n, r, combination(n,r));
	}
	while(1);

	return 0;
}

运行结果:

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5702846.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存