C语言编程:求圆面积与函数调用

需积分: 9 5 下载量 138 浏览量 更新于2024-12-08 收藏 1.62MB DOC 举报
"09年9月C语言上机考试题" 这部分内容是关于两道C语言编程题的,主要涉及的知识点包括: 1. **圆面积计算**:根据题目描述,给定的程序用于计算半径为r的圆的面积的一半。圆面积的计算公式是πr²。在函数`double fun(double r)`中,需要填写计算圆面积的表达式,即`r*r`。这是对数学公式应用到编程中的基础操作。 2. **输入输出函数**: - `scanf()`:用于从用户那里获取输入。在`main`函数中,`scanf("%lf", &x)`用来读取用户输入的圆的半径值。这里的`%lf`是浮点数的格式控制符,`&x`是接收输入的变量的地址,因为`scanf()`需要知道存储输入值的位置。 - `printf()`:用于输出结果。在`main`函数末尾,`printf("s=%lf\n", fun(x))`用于打印计算出的面积。`%lf`同样用于表示浮点数,`fun(x)`是调用函数并传入圆的半径x,得到面积后输出。 3. **函数调用与参数传递**: - 函数`fun`接受一个参数`doubler`,即圆的半径,计算得到的面积会作为函数的返回值。 - 在`main`函数中,`fun(x)`将变量`x`的值作为参数传递给`fun`函数,`fun`函数内部计算后返回的值被用作`printf`的输出。 4. **条件语句**:在第二个程序中,函数`f(double x)`使用了条件语句来判断x的值,并根据不同的情况返回不同的结果。这里存在一个错误,因为`elseif`不是C语言的关键字,应该改为`else if`。 5. **数学函数**:虽然在提供的代码中没有直接使用,但题目提到`f(x)`的定义包含了一个分式,这可能需要使用到C语言的数学库函数,如`pow`(求幂)或`fabs`(求绝对值),但具体实现未给出。 6. **函数定义**:在第二段程序中,`f(double x)`的定义前有注释`/*************found**************/`,表明这个函数需要被修正以得到正确结果。根据题目要求,需要确保函数能正确计算序列`f(-n)`到`f(n)`的和。 7. **程序结构**:题目强调不能改变`main`函数和其他函数的结构,这意味着只能在指定的填空处进行修改,而不能添加新的行或删除现有代码。 总结起来,这两道题主要测试了C语言的基础知识,包括数学计算、输入输出、函数调用、条件语句以及对数学函数的理解和使用。解决这些问题需要扎实的C语言基础和一定的数学逻辑。