1.指定输出有两位小数点
printf("%.2f",ans);
2.当不知道输入有多少个数时,默认遇到空格时停止输入
cin的输入有一个特点,在遇到‘ ’(空格)时,会结束输入,而cin.get()则将‘ ’也作为了一个字符放到输入里。
2.1int类型
cin 输入接触到第一个非空格字符时开始阅读,当遇到下一个空格字符(空格、制表符、换行符)时就会停止读取。因此可以放在while中作为输入bool类型的输入结束判断符
#include <iostream>
using namespace std;
int main()
{
int n;
while (cin >> n)
{
//输入没有结束,cin 就返回 true,条件就为真
if(cin.get()=='\n') break;
}
return 0;
}
2.2char类型
当遇到换行符时,while语句不符合条件停止输入。
#include<stdio.h>
while((c=getchar())!='\n')
{
...
}
2.3 string类型
getline(cin,s);用法:接收一个字符串,可以接收空格并输出,遇到换行则停止。getline只要一遇到换行符就结束读取操作并返回结果,哪怕输入的一开始就是换行符也是如此。如果输入真的一开始就是换行符,那么所得的结果是个空string。
#include <iostream>
#include<string>
using namespace std;
int main(){
string s;
while(getline(cin, str))
{
}
return 0;
}
3.输出保留n位小数点
//保留ans3位小数
cout << setprecision(5) << ans << endl;