PTA题目集1
PTA的第一个题目集较为简单,所以不做过多描述:
比较坑的是题目没有说明,但要都是float类型,如果在计算中用double类型,那么最后输出时要强制转换成float类型。
7-2 长度质量计量单位换算
7-4 NCHU_房产税费计算
以上两题都是这样,不去百度我都不知道要这样搞(
PTA题目集2
题目集2就开始加难度了,7-1和7-2都是输入多个内容然后排序,计算,最后输出结果。
这里我侧重输入方式,当时不太会所以只会用scannner一个一个输入,保存进创建好的变量中。
创建学生类,包含 属性:学号(String)、姓名(String)、语文成绩(int)、数学成绩(int)、物理成绩(int) 方法:计算总分、计算平均分 输入5个学生的信息,将每个学生的信息封装在一个学生对象中。 按输入顺序依次输出5个学生的总分、平均分(精确到小数点后两位,舍去部分按四舍五入规则计入最后一位)。 浮点数保留小数的相关知识可参考: https://blog.csdn.net/huaishuming/article/details/17752365 注意:未用学生类对象封装数据的,本题计0分 输入格式: 5个学生信息,每个学生信息格式: 学号+英文空格+姓名+英文空格+语文成绩+英文空格+数学成绩+英文空格+物理成绩 例如: 22201311 张琳 80 80 80 22201312 黄昊 66 82 81 22201313 李少辰 77 76 80 22201314 袁婷 62 79 90 22201315 朱哲一 74 98 94 输出格式: 5个学生信息,每个学生信息格式: 学号+英文空格+姓名+英文空格+总成绩+英文空格+平均分 例如: 22201311 张琳 240 80.00 22201312 黄昊 229 76.33 22201313 李少辰 233 77.67 22201314 袁婷 231 77.00 22201315 朱哲一 266 88.67 输入样例: 在这里给出一组输入。例如: 22201311 张琳 80 80 80 22201312 黄昊 66 82 81 22201313 李少辰 77 76 80 22201314 袁婷 62 79 90 22201315 朱哲一 74 98 94 输出样例: 在这里给出相应的输出。例如: 22201311 张琳 240 80.00 22201312 黄昊 229 76.33 22201313 李少辰 233 77.67 22201314 袁婷 231 77.00 22201315 朱哲一 266 88.677-1 成绩计算-1-类、数组的基本运用
1 import java.text.DecimalFormat; 2 import java.util.Scanner; 3 4 public class Main { 5 public static class students{ 6 String numberString; 7 String nameString; 8 int chinese; 9 int math; 10 int phy; 11 int zong=0; 12 int all() { 13 zong=chinese+math+phy; 14 return zong; 15 } 16 double average() { 17 double aver=zong/(double)3; 18 return aver; 19 } 20 } 21 22 public static void main(String[] args) { 23 24 students[] stus=new students[5]; 25 DecimalFormat df = new DecimalFormat("#.00"); 26 Scanner putinScanner=new Scanner(System.in); 27 28 //String stu1=putinScanner.nextLine(); 29 for(int i=0;i<5;i++) 30 { 31 stus[i]=new students(); 32 stus[i].numberString=putinScanner.next(); 33 stus[i].nameString=putinScanner.next(); 34 stus[i].chinese=putinScanner.nextInt(); 35 stus[i].math=putinScanner.nextInt(); 36 stus[i].phy=putinScanner.nextInt(); 37 } 38 39 for(int i=0;i<5;i++) 40 { 41 System.out.println(stus[i].numberString+" "+stus[i].nameString+" "+ 42 stus[i].all()+" "+df.format(stus[i].average())); 43 } 44 } 45 46 47 }
创建成绩类,包含: 属性:平时成绩(int)、期末成绩(int) 方法:计算总成绩(计算规则:平时成绩*0.4+期末成绩*0.6,保留整数部分,小数部分直接丢弃) 创建学生类,包含: 属性:学号(String)、姓名(String)、语文成绩(成绩类)、数学成绩(成绩类)、物理成绩(成绩类) 方法:计算总分、计算平均分 输入3个学生的信息,将每个学生的信息封装在一个学生对象中。 按输入顺序依次输出3个学生的总分、平均分(精确到小数点后两位,舍去部分按四舍五入规则计入最后一位)。 浮点数保留小数的相关知识可参考:https://blog.csdn.net/huaishuming/article/details/17752365 注意:未用学生类对象封装数据的,本题计0分 输入格式: 依次输入3个学生的每门课成绩,每个学生成绩信息格式: 学号+英文空格+姓名+英文空格+课程名+英文空格+平时成绩+英文空格+期末成绩 注:3个学生的课程顺序可能会不一致 例如: 22201311 张琳 语文 70 80 22201311 张琳 数学 85 89 22201311 张琳 物理 75 83 22201312 黄昊 语文 66 78 22201312 黄昊 数学 76 82 22201312 黄昊 物理 83 82 22201313 李少辰 语文 86 76 22201313 李少辰 数学 78 76 22201313 李少辰 物理 87 76 输出格式: 3个学生信息,每个学生信息格式: 学号+英文空格+姓名+英文空格+总成绩+英文空格+平均分 例如: 22201311 张琳 242 80.67 22201312 黄昊 234 78.00 22201313 李少辰 236 78.67 输入样例: 在这里给出一组输入。例如: 22201311 张琳 语文 70 80 22201311 张琳 数学 85 89 22201311 张琳 物理 75 83 22201312 黄昊 语文 66 78 22201312 黄昊 数学 76 82 22201312 黄昊 物理 83 82 22201313 李少辰 语文 86 76 22201313 李少辰 数学 78 76 22201313 李少辰 物理 87 76 输出样例: 在这里给出相应的输出。例如: 22201311 张琳 242 76.67 84.00 80.67 22201312 黄昊 234 75.00 80.67 78.00 22201313 李少辰 236 83.67 76.00 78.677-2 成绩计算-2-关联类
import java.text.DecimalFormat; import java.util.Scanner; public class Main { public static class result{ int ping; int mo; int zong() { int zon=(int) (ping*0.4+mo*0.6); return zon; } } public static class students{ String numberString; String nameString; int[] feng=new int[3]; int zong=0; int all() { zong=feng[0]+feng[1]+feng[2]; return zong; } double average() { double aver=zong/(double)3; return aver; } } public static void main(String[] args) { result[] tell=new result[3]; students[] stus=new students[3]; DecimalFormat df = new DecimalFormat("#.00"); Scanner putinScanner=new Scanner(System.in); double[][] jun=new double[3][2]; String putin1,putin2; for(int i=0;i<3;i++) { tell[i]=new result(); stus[i]=new students(); } for(int i=0;i<3;i++) { for(int n=0;n<3;n++) { putin1=putinScanner.next(); if(n==1) stus[i].numberString=putin1; putin1=putinScanner.next(); if(n==1) stus[i].nameString=putin1; putin1=putinScanner.next(); putin1=putinScanner.next(); tell[n].ping=Integer.parseInt(putin1); jun[i][0]+=tell[n].ping; putin2=putinScanner.next(); tell[n].mo=Integer.parseInt(putin2); jun[i][1]+=tell[n].mo; stus[i].feng[n]=tell[n].zong();; } } for(int i=0;i<3;i++) { System.out.println(stus[i].numberString+" "+stus[i].nameString+" "+ stus[i].all()+" "+df.format(jun[i][0]/(double)3)+" "+ df.format(jun[i][1]/(double)3)+" "+ df.format(stus[i].average())); } } }
倒数两题对我来讲是真的有难度,7-7中题目给了一些类,按着类来创建还勉强可以做
标签:总结,李少辰,题目,int,PTA,22201311,黄昊,22201313,22201312 From: https://www.cnblogs.com/nchu21207115/p/17742199.html