Bailian2675 计算书费【求和】

tech2023-09-26  105

2675:计算书费 总时间限制: 1000ms 内存限制: 65536kB 描述 下面是一个图书的单价表: 计算概论 28.9 元/本 数据结构与算法 32.7 元/本 数字逻辑 45.6元/本 C++程序设计教程 78 元/本 人工智能 35 元/本 计算机体系结构 86.2 元/本 编译原理 27.8元/本 操作系统 43 元/本 计算机网络 56 元/本 JAVA程序设计 65 元/本 给定每种图书购买的数量,编程计算应付的总费用。 输入 输入第一行包含一个正整数k(0<k<100),表示有k组测试数据;接下来k行,每行包含一组测试数据。每组测试数据包含10个整数(大于等于0,小于等于100),分别表示购买的《计算概论》、《数据结构与算法》、《数字逻辑》、《C++程序设计教程》、《人工智能》、《计算机体系结构》、《编译原理》、《操作系统》、《计算机网络》、《JAVA程序设计》的数量(以本为单位)。每两个整数用一个空格分开。 输出 对于每组测试数据,输出一行。该行包含一个浮点数f,表示应付的总费用。精确到小数点后两位。

可用printf("%.2f\n", sum)来输出sum的值,并精确到小数点后两位。 样例输入 2 1 5 8 10 5 1 1 2 3 4 3 5 6 3 100 1 1 0 1 0 样例输出 2140.20 4427.80 来源 计算概论05-模拟考试1

问题链接:Bailian2675 计算书费 问题简述:(略) 问题分析:简单的金额求和,不解释。需要注意输入输出和计算类型,一般而言,在OJ上做题,输入和计算类型用double,输出时按float格式输出,这也许是因为测试数据是按照这样来做的。 程序说明:程序中使用常量N,是出于程序通用性的考虑。另外,求和时,求和变量的初值需要置为0。 参考链接:(略) 题记:(略)

AC的C++语言程序如下:

/* Bailian2675 计算书费 */ #include <bits/stdc++.h> using namespace std; double cost[] = { 28.9, 32.7, 45.6, 78,35, 86.2, 27.8, 43, 56,65 }; const int N = sizeof(cost) / sizeof(double); int main() { int k; scanf("%d", &k); while(k--) { int num; double sum = 0; for(int i = 0; i < N; i++) scanf("%d", &num), sum += num * cost[i]; printf("%.2f\n", sum); } return 0; }
最新回复(0)