7-4 sdut-String-5 图书价格汇总(II) (10 分)
点击查看代码
假设图书馆中图书信息的格式为:
Java程序设计: 34;Web程序设计: 56;JSP程序设计:20
按要求输出每本图书的名称及价格,计算所有图书的总价格并输出。
输入格式:
读入一行图书信息。如:
Java程序设计: 34;Web程序设计: 56;JSP程序设计:20
提示:
(1)每本书的价格是整数,价格与下一本书的名字之间有一个中文;价格前可能有空格,可能没有。
(2)题目中的分号”;“和冒号”:“为全角字符。
输出格式:
分别输出每本图书的名称及价格,一本书占一行,形式为:书名--价格;
最后,输出计算的所有图书的总价格,形式为:总价格--总价格
输入样例:
Java程序设计:34 ;Web程序设计: 56;JSP程序设计:20
结尾无空行
输出样例:
Java程序设计--34
Web程序设计--56
JSP程序设计--20
总价格--110
假设图书馆中图书信息的格式为:
Java程序设计: 34;Web程序设计: 56;JSP程序设计:20
按要求输出每本图书的名称及价格,计算所有图书的总价格并输出。
输入格式:
读入一行图书信息。如:
Java程序设计: 34;Web程序设计: 56;JSP程序设计:20
提示:
(1)每本书的价格是整数,价格与下一本书的名字之间有一个中文;价格前可能有空格,可能没有。
(2)题目中的分号”;“和冒号”:“为全角字符。
输出格式:
分别输出每本图书的名称及价格,一本书占一行,形式为:书名--价格;
最后,输出计算的所有图书的总价格,形式为:总价格--总价格
输入样例:
Java程序设计:34 ;Web程序设计: 56;JSP程序设计:20
结尾无空行
输出样例:
Java程序设计--34
Web程序设计--56
JSP程序设计--20
总价格--110
难点: 处理空格
代码:
import java.util.Scanner;
public class Main {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
String st = sc.nextLine();
String[] str = st.split(";");
int n = str.length;
int sum = 0;
for (int i = 0; i < n; i++) {
String[] str1 = str[i].split(":");
// 以下删除空格部分
String price = str1[1];
char[] c = price.toCharArray();
price = "";
for (int j = 0; j < c.length; j++) {
if (c[j] != ' ') {
price += c[j];
}
}
//删除空格部分
System.out.println(str1[0] + "--" + price);
sum += Integer.parseInt(price);
}
System.out.println("总价格--" + sum);
sc.close();
}
}