首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编—个函数flat fun(double h),该函数的功能是:使变量h中的值保留两位小数,并对第三位进行四舍五入(规定h中的值为正数)。 例如,若h值为1234.567,则函数返回1234.570000;若h值为1234.564,则函数返回1234.5
请编—个函数flat fun(double h),该函数的功能是:使变量h中的值保留两位小数,并对第三位进行四舍五入(规定h中的值为正数)。 例如,若h值为1234.567,则函数返回1234.570000;若h值为1234.564,则函数返回1234.5
admin
2020-07-28
44
问题
请编—个函数flat fun(double h),该函数的功能是:使变量h中的值保留两位小数,并对第三位进行四舍五入(规定h中的值为正数)。
例如,若h值为1234.567,则函数返回1234.570000;若h值为1234.564,则函数返回1234.560000。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
1 #include<stdio.h>
2 #include<conio.h>
3 #include<stdlib.h>
4 float fun(float h)
5 {
6
7 }
8 void main()
9 {
10 FILE*wf;
11 float a;
12 system("CLS");
13 printf("Enter a:");
14 scanf("%f",&a);
15 printf("The original data is:");
16 printf("%f\n\n",a);
17 printf("The result:%f\n",fun(a));
18 /******************/
19 wf=fopen("out.dat","W");
20 fprintf(wf,"%f",fun(8.32533));
21 fclose(wf);
22 /******************/
23 }
选项
答案
float fun(float h) { int tmp= (int) (h*1000 +5)/10; /*单精度数h乘以1000后再加5,相当于对h中的第三位小数进行四舍五入,除以10后将其赋给一个长整型数时就把第三位小数后的数全部截去*/ return(float)tmp/100.0; /*除以100,保留2位小数*/ }
解析
注意:本题要求对h的值真正进行四舍五人运算,而不是为了输出,即不能用prinff("%7.2f",h)来直接得到结果。四舍五入算法:如果要求精确到小数点后面的第n位,则需要对第n+1位进行运算。方法是将该小数乘以10的n+1次方后加5,然后除以10并强制转换变量类型为整型,再将该数除以10的n次方,同时强制转换类型为浮点型。
代码实现如下:
int t;/*定义整型变量t*/
t=(int)(h*10
n+1
+5)/10;/*对h进行操作,得到值浮点型,t取值时取整数部分。10
n+1
为要扩大的倍数*/
h=(noat)t/10
n
;/*将t缩小10
n
倍,并转换成浮点型*/
转载请注明原文地址:https://kaotiyun.com/show/DT3p777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,请编写函数fun,其功能是:找出一维整型数组元素中最大的值及其所在的下标,并通过形参传回。数组元素中的值已在主函数中赋予。主函数中
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:求S的值。例如,当k为10时,函数的值应为1.533852。请改正程序中的错误,使它能得出正确的结果。注
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:计算并输出下列级数的前N项和SN,直到SN+1的值大于q为止,q的值通过形参传入。例如,若q的值为50.0,
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,函数fun的功能是:将a、b中的两个正整数合并形成一个新的整数放在c中。合并的方式是:将a中的十位和个位数依次放在变量c的十位和千位
若有定义:inta[2][3];,以下选项中对a数组元素正确引用的是
下列叙述中错误的是
有以下程序段TypedefstructNODE{intnum;structNODE*next;}OLD;以下叙述中正确的是
以下选项中不能用作C程序合法常量的是
算法的空间复杂度是指()。
由N个有序整数组成的数列己放在一维数组中,给定程序MODI1.C中函数fun的功能是:利用折半查找算法查找整数m在数组中的位置。若找到,返回其下标值;反之,返回—1。折半查找的基本算法是:每次查找前先确定数组中待查的范围:low和high(lo
随机试题
行政机关在作出行政处罚决定之前,应当告知当事人作出行政处罚决定的事实、理由及依据,并告知当事人依法享有的权利。
小叶性肺炎的病变特点是
艾滋病的传播途径不包括
急性细菌性痢疾的临床表现,不典型的是
为了解决计算机CPU处理速度快,外设速度慢的矛盾,计算机采用了()技术。
教育费附加以( )为税基。
北京××商贸有限公司(1101210078)委托辽宁×××进出口公司(2101910061)与韩国签约,为河北××钢铁有限公司(1312931542)进口B50-71A型电动叉车。货物运抵进境后,由大连××货运代理公司(2102981013)向进境地海关申
战略咨询委员会是由中国移动通信集团公司邀请()、国内外知名经济法律学者、电信业知名人士和电信技术专家组成。
某单位需要派出下乡扶贫人员1至2人。经过宣传号召,众人纷纷报名。经过一番考虑,领导最后将扶贫人选集中在小王和小张两人身上。大家对最终的挑选结果作了如下猜测:(1)小王会被挑选上;(2)如果小王被挑选上,那么小张就不会被挑选上;
语言处理程序用于将源程序转换成机器语言形式,语言处理程序将进行语法、语义等方面的检查工作。语言处理程序包括汇编程序、编译程序和______3种。
最新回复
(
0
)