关闭

另一种阶乘问题

569人阅读 评论(0) 收藏 举报
分类:

另一种阶乘问题

时间限制:3000 ms  |  内存限制:65535 KB
难度:1
描述

大家都知道阶乘这个概念,举个简单的例子:5!=1*2*3*4*5.现在我们引入一种新的阶乘概念,将原来的每个数相乘变为i不大于n的所有奇数相乘例如:5!!=1*3*5.现在明白现在这种阶乘的意思了吧!

现在你的任务是求出1!!+2!!......+n!!的正确值(n<=20)

输入
第一行输入一个a(a<=20),代表共有a组测试数据
接下来a行各行输入一个n.
输出
各行输出结果一个整数R表示1!!+2!!......+n!!的正确值
样例输入
2
3
5
样例输出
5
23
自己写的代码:
#include<stdio.h>
int fun(int n)
{
	int i,sum=1;
	for(i=1;i<n+1;i++)
	{
		if(i%2!=0)
			sum*=i;
	}
	return sum;
}
int main()
{
	int a,n,j;
	scanf("%d",&a);
	while(a--)
	{		
		scanf("%d",&n);
		int sum1=0;  //将sum1置为0
		for(j=1;j<n+1;j++)
		{
			sum1+=fun(j);
		}
		printf("%d\n",sum1);
	}
	return 0;
}
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:199384次
    • 积分:4761
    • 等级:
    • 排名:第6279名
    • 原创:282篇
    • 转载:28篇
    • 译文:0篇
    • 评论:37条
    博主简介
    南邮硕士毕业,现就职于奇虎360上海研发中心,研究算法数据结构,C++,Python,Linux,Docker技术,安全准入技术,网络安全,服务计算。博主QQ:673771573
    博客专栏
    最新评论