1.1 题目
1.2 题解
#include<bits/stdc++.h>
using namespace std;
int main(){
double a;
int b;
cin>>a>>b;
cout<<setprecision(3)<<fixed<<a/b<<endl<<b*2;
return 0;
}
1.3反思
1.3.1 fixed
那么如何消除浮点数的科学计数法呢?
答案是用fixed
1.3.2 setprecision()
相信大家都知道,fixed与setprecision(n)连用可以控制小数点后的位数,现在就可以理解因为那是定点数记数法。
如果没有fixed的话,就是浮点数记数法了,那么它控制的应该就是有效数字的位数(包括小数点前的)!!!!!
2.1 题目
2.2 题解
#include<bits/stdc++.h>
using namespace std;
double a,b,c,p,s;
int main(){
cin>>a>>b>>c;
p=(a+b+c)/2;
s=sqrt(p*(p-a)*(p-b)*(p-c));
printf("%.1lf",s);
return 0;
}
2.3反思
sqrt()函数的使用:
功 能: 计算一个非负实数的平方根
% f格式:
用来输出实数(包括单、双精度),以小数形式输出。有以下几种用法:
%f:不指定宽度,整数部分全部输出并输出6位小数。
%m.nf:输出共占m列,其中有n位小数,如数值宽度小于m左端补空格。
%-m.nf:输出共占n列,其中有n位小数,如数值宽度小于
转换说明符
%a(%A) 浮点数、十六进制数字和p-(P-)记数法(C99)
%c 字符
%d 有符号十进制整数
%f 浮点数(包括float和double)
%e(%E) 浮点数指数输出[e-(E-)记数法]
%g(%G) 浮点数不显无意义的零"0"
%i 有符号十进制整数(与%d相同)
%u 无符号十进制整数
%o 八进制整数 e.g. 0123
%x(%X) 十六进制整数<?xml:namespace prefix = st1 />() e.g. 0x1234
%p 指针
%s 字符串
%% "%"m右端补空格。