c++求梯形面积保留一位小数,第二位四舍五入

如题所述

#include <stdio.h>
int main()
{
 float fTop = 0,fBtm = 0,fHeight = 0,fArea = 0;
 printf("请输入梯形的上底、下底和高\n");
 
 scanf("%f%f%f",&fTop,&fBtm,&fHeight);
 fArea = (fTop + fBtm) * fHeight / 2;
 if(fArea > 0)
 {
  printf("所求梯形面积为%.1f",fArea);
 }
 else
 {
  ::printf("输入数据有误!");
 }
 return 0;
}

 

验证:

 

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-11-20
#include<iostream>
using namespace std;

#include<stdio.h>

int main()
{
float a,b,h,s;
printf("请输入梯形上底、下底和高,用空格分隔");
scanf("%f %f %f",&a,&b,&h);
s=(a+b)*h/2;
printf("梯形面积=%5.1f\n",(int(s*10+0.5))/10.0);
}
若满意请及时采纳,谢谢本回答被网友采纳
第2个回答  2014-11-20
float S=452.283245;
int a,b;
S*=100;
a=S;
b=a%10;
a=a/10;
if(5<=b)
a+=1;
S=a/10;
printf("S=%.1lf\n",S);
相似回答