c语言设计第二次作业答案,[转载]《C语言程序设计》作业题参考答案(2011.4.25)...

//(1) 定义函数fact(n)计算n的阶乘:n!=1*2*……*n,函数返回值类型是double。

//(2) 定义函数cal(m,

n)计算累加和:s=Sigma(k=m,n)k=m+(m+1)+...+n ,函数返回值类型是double。

//(3) 定义函数main(),输入正整数n,计算并输出下列算式的值。该算式中,每一项的分子是累加和,要求调用函数cal(m,n)计算Sigma

k(k=m,n) ;每一项的分母是阶乘,要求调用函数fact(n)计算n!。

//y=1+(1+2)/2!+(1+2+3)/3!+...+(1+2+... ...+n)/n!

.

#include

//1

double fact(int n)

{

int i;

double f=1.0;

for(i=1;i<=n;i++)

f*=i;

return f;

}

//2

double cal(int m,int n)

{

int i;

double sum=0.0;

for(i=m;i<=n;i++)

{

sum+=i;

}

return sum;

}

//3.

void main()

{

int i,n;

double y=0.0;

scanf("%d",&n);

for(i=1;i<=n;i++)

{

y+=cal(1,i)/fact(i);

}

printf("%.3fnn",y);

}

//2007年秋 浙江省C语言二级试题最后一道编程题

//从n个不同的元素中,每次取出k个不同的元素,不管其顺序合并成一组,称为组合。组合种数计算公式如下:

//Cnk=n!/((n-k)!*k!)

//(1) 定义函数fact(n)计算n的阶乘 n!,函数返回值类型是double。

//(2) 定义函数cal(k,

n)计算组合数,函数返回值类型是double,要求调用函数fact(n)计算n的阶乘。

//(3) 定义函数main(),输入正整数n,输出n的所有组合数

Cnk(1≤k≤n),要求调用函数cal(k,n)计算组合数。

#include

//(1) 定义函数fact(n)计算n的阶乘

n!,函数返回值类型是double。

double fact(int n)

{

int i;

double fac=1.0;

for(i=1;i<=n;i++)

{

fac*=i;

}

return fac;

}

//(2) 定义函数cal(k,

n)计算组合数,函数返回值类型是double,要求调用函数fact(n)计算n的阶乘。

double cal(int k,int n)

{

double com=fact(n)/(fact(n-k)*fact(k));

return com;

}

//(3) 定义函数main(),输入正整数n,输出n的所有组合数

Cnk(1≤k≤n),要求调用函数cal(k,n)计算组合数。

void main()

{

int k,n;

double Cnk;

scanf("%d",&n);

for(k=1;k<=n;k++)

{

Cnk=cal(k,n);

printf("C%d_%d=%.3fn",n,k,Cnk);

}

printf("nn");

}

a4c26d1e5885305701be709a3d33442f.png

a4c26d1e5885305701be709a3d33442f.png

a4c26d1e5885305701be709a3d33442f.png

a4c26d1e5885305701be709a3d33442f.png

a4c26d1e5885305701be709a3d33442f.png

a4c26d1e5885305701be709a3d33442f.png

a4c26d1e5885305701be709a3d33442f.png

a4c26d1e5885305701be709a3d33442f.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值