zoukankan      html  css  js  c++  java
  • 蓝桥杯-猴子吃包子-输出小数的位数

    猴子吃包子

    问题描述
      从前,有一只吃包子很厉害的猴子,它可以吃无数个包子,但是,它吃不同的包子速度也不同;肉包每秒钟吃x个;韭菜包每秒钟吃y个;没有馅的包子每秒钟吃z个;现在有x1个肉包,y1个韭菜包,z1个没有馅的包子;问:猴子吃完这些包子要多久?结果保留p位小数。
     
    输入格式
      输入1行,包含7个整数,分别表示吃不同包子的速度和不同包子的个数和保留的位数。
     
    输出格式
      输出一行,包含1个实数,表示吃完所有包子的时间。
     
    样例输入
    4 3 2 20 30 15 2
     
    样例输出
    22.50
     
    注意
        用“ * ”控制输出小数的位数
     
    代码如下:
     1 #include<iostream>
     2 #include<stdio.h>
     3 using namespace std;
     4 int main()
     5 {
     6     double a[3],b[3];
     7     int n;
     8     for(int i=0;i<3;i++)
     9     {
    10         scanf("%lf",&a[i]);
    11      } 
    12     for(int i=0;i<3;i++)
    13     {
    14         scanf("%lf",&b[i]);
    15     }
    16     scanf("%d",&n);
    17     double sum=0;
    18     for(int i=0;i<3;i++)
    19     {
    20         sum=sum+b[i]/a[i];
    21     }
    22     printf("%.*lf",n,sum);
    23     return 0;
    24  } 

    float与double的区别:

    float为单精度,内存中占4个字节,有效数位是7位(因为有正负,所以不是8位),double为双精度,占8个字节,有效数位是16位。

    有个例子:在C和C++中,如下赋值语句 
    float a=0.1; 
    编译器会报错
    原因: 
    在C/C++中,上述语句等号右边0.1,我们以为它是个float,但是编译器却把它认为是个double(因为小数默认是double),所以要报这个warning,一般改成0.1f就没事了。 

     
  • 相关阅读:
    Django报错 No module named 'django.templates'
    Django 创建 hello world
    python(Django2.0) 安装
    create-react-app踩坑记
    Vue项目的痛点
    React 错误处理(componentDidCatch)
    Vue props双向绑定
    redux 中的 redux-thunk(中间件)
    webpack 搭建React(手动搭建)
    vue interceptors(拦截器)
  • 原文地址:https://www.cnblogs.com/canneddream/p/13493467.html
Copyright © 2011-2022 走看看