问答题 请编一个函数float proc(double h),函数的功能是对变量h中的值保留2位小数,并对第3位进行四舍五入(规定h中的值为正数)。
例如,若h值为7.32596,则函数返回7.33;若h值为7.32496,则函数返回7.32。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的花括号中填入所编写的若干语句。
试题程序:
#include<stdlib.h>
#include<stdio.h>
#include<conio.h>
float proc(float h)
{

}
void main()
{
float f;
system("CLS");
printf("Enter f:");
scanf("%f", &f);
printf("The original data is:");
printf("%f/n/n", f);
printf("The result: %f/n", proc(f));
}
【正确答案】
【答案解析】float proc(float h)
{
long t;
t=(h*1000+5)/10; h*1000+5) //表示第3位进行四舍五入
return(float)t/100; //h中的值保留2位小数
} [解析] 要实现对变量的值保留2位小数,并对第3位小数进行四舍五入,可以通过先将其小数点后3位变为正数后加5,所得到的数除10,最后再除100来实现。