C语言程序设计练习题(含程序及参考答案) 下载本文

.

16、使用函数的方式,计算如下公式的值。 1 1 1 A1=1,A2=──,A3=──,……An=──── 1+A1 1+A2 1+A(n-1) 例如:若n=10,则应输出: 0.617977。 #include float fun ( int n ) {

float A=1; int i; for (i=1; i<=n; i++) A = 1.0/(1+A); return A ; }

void main( ) {

int n ;

printf(\ scanf(\

printf(\ }

整理版

.

* 17、使用函数的方式,,按下面的公式计算并输出数列的第m项。

┌ 2, m = 1; │ 3, m = 2; FFF( m ) = ┤ 5, m = 3; └ FFF(m - 3) + FFF(m - 1), m > 3; 例如,若输入整数 9,则应输出:47。 (不用做)

* 18、使用函数的方式,按以下递归公式求函数值 ┌10 (n=1) fun(n)=│

└fun(n-1)+2 (n>1)

例如,当给n输入5时,函数值为18;当给n输入3时,函数值为14。 (不用做)

19、计算并输出当0

例如,在主函数中从键盘给x输入0.21后,输出

整理版

.

为:s=1.100000。 #include #include double fun(double x) {

int n=1;

/* 循环计数*/ double sn=1;

/* 累计数*/

double xn=1,xn1=0; /*x的n值,以及x的n-1值;*/ while(fabs(xn-xn1)>=0.000001)/*绝对值是否合格*/ { xn=xn*x*(0.5-n+1)/n; /*表达式分解xn=(xn-1)*x*(0.5-n+1)/n*/

n+=1;

sn+=xn; /*sn累加上xn*/

} return sn; } void main() {

double x,s;

printf(\ \ scanf(\ s=fun(x); printf(\

整理版

以.

}

20、计算并输出s。

x^2 x^3 x^n s = 1 + x + ── + ── + …… + ── 2! 3! n,x从键盘输入,例如,当n=10,1.349859。 #include double fun(double x,int n) { int i;

double f=1.0,h=x; double s=1; s=s+h/f; for (i=2;i<=n;i++) {

f=f*i;h=h*x; s=s+h/f; } return s; }

void main()

整理版

n!

x=0.3 时,函数值为