C语言函数解题4步曲实例

①源程序

#include<stdio.h>

doublef(intn)

{

inti;

doubles;

s=1.0;

for(i=1;i<=n;i++)s+=1.0/i;

returns;

}

main()

{

inti,m=3;

doublea=0.0;

for(i=0;im;i++)a+=f(i);

printf("%f\n",a);

}

②先看主函数

求a的值

③实参赋值形参

形参i

实参n

i=0不满足形参中i>=1条件,不执行

i=1=n=i

i=2=n=i

i=3不满足实参中i<=3条件,不执行

即只赋值1,2。

④用形参的公式计算

公式s=s+1.0/i

i=1

s=1.0+1.0/1=2.0

i=2

s=2.0+1.0/2=2.5

⑤returns

将形参中s的值

返回给实参中的f(i)

实参公式a=a+f(i)

i=1、s=2.0

a=0.0+2.0=2.0

i=2、s=2.5

a=2.0+2.5=5.5

又因为输出%f,默认小数点后6位

即a=5.

⑥总结

此题很好的复习了

函数解题四步曲

尤其是本题

定义函数在前

main函数在后

但是

无论主函数在什么位置

先看主函数求什么




转载请注明:http://www.aierlanlan.com/tzrz/4428.html