黑马程序员技术交流社区
标题: 周末送分活动!答题拿技术分~ [打印本页]
作者: 洋葱头头 时间: 2016-1-31 15:37
标题: 周末送分活动!答题拿技术分~
本帖最后由 洋葱头头 于 2016-2-21 21:40 编辑
最近论坛水贴不少,刷分现象也很严重,本版主十分痛心。我也知道大家并不是故意为了刷分而刷分
相信有不少伙伴为了技术分而努力,或者时间来不及凑够25技术分而刷分,为了改善这一情况,所以本大大特地来送福利。
只要能做出我出的题目,技术分“大大”的有。还能提高自己的编程能力何乐而不为!
当然题目也没那么简单,也要一定的要求,按照版主的要求完成题目有额外的技术分哦(不是黑马币!)
下面是题目要求:@重要,请仔细阅读@
1.根据题目要求先写出思路和总结(自己总结) (1技术分)
2.完成题目中的代码 ps:代码错误不给分 请仔细核对(1技术分)
3.给出代码运行结果 4.小要求:排版严谨,请按照面向对象的思想编写程(很重要) 3,4加起来1技术分
5.额外要求:根据代码写出相应注释(希望你的代码和思路别人也能读懂)(1技术分)
按要求完成能有3个以上的技术分 ,够版主我水好几天的
下面给出题目:
有五个学生,每个学生有3门课(语文、数学、英语)的成绩。
写一个程序从键盘接收学生的信息格式为,name,003,30,30,30(姓名,学号,三门课成绩)
然后把五个学生的信息按照总分从高到低写入一个文件夹"stu.txt"。
要求stu.txt文件的格式要清晰直观,打开文件就可以很清楚的看到学生的信息
考虑到可能题目的代码量可能过多,所以做完的同学可以把txt压缩上传
如图红圈中的按钮
还有严禁抄袭,独立完成 不可百度 一旦发现 技术分清0
骗你们的 反正不许抄袭
附下一期送技术分 http://bbs.itheima.com/thread-277107-1-1.html
本答题帖已关闭 已没有技术分奖励 练手随意
作者: 洋葱头头 时间: 2016-1-31 15:42
题目不是太难 还请各位伙伴参与
作者: 洋葱头头 时间: 2016-1-31 20:42
这么简单的题 没人做啊
作者: 酱油 时间: 2016-2-1 12:12
帮顶!!!!避免被举报刷分 我都不敢做!
作者: 酱油 时间: 2016-2-1 14:34
放直播贴去。。哈哈
作者: 洋葱头头 时间: 2016-2-1 14:59
清空你技术分
作者: 酱油 时间: 2016-2-1 15:06
举报你刷分水帖!呼呼
作者: 洋葱头头 时间: 2016-2-1 15:09
你把这题做了 谢谢
作者: Mayer 时间: 2016-2-1 15:16
哈哈,不知道真的假的,拿分来了
-
-
Student.rar
2.66 KB, 阅读权限: 100, 下载次数: 3
作者: 洋葱头头 时间: 2016-2-1 15:40
很好 就是txt里的比较乱 分给你
作者: Mayer 时间: 2016-2-1 16:17
谢谢
作者: j6819236 时间: 2016-2-1 18:01
写了个玩玩。。
test.zip
(69.31 KB, 下载次数: 299)
作者: 洋葱头头 时间: 2016-2-1 18:12
看过了 资料也很全
不过你学号没写,流也没关 不过都是小问题啦
作者: 酱油 时间: 2016-2-1 18:40
写的丑,。。给版主大人顶贴来了!
-
-
Demo.rar
1.28 KB, 阅读权限: 30, 下载次数: 6
水水
作者: 洋葱头头 时间: 2016-2-1 18:46
只能给2分了
作者: 吴迪 时间: 2016-2-1 21:27
求技术分,楼主
-
-
StudentInfor.zip
1.54 KB, 阅读权限: 100, 下载次数: 3
作者: 洋葱头头 时间: 2016-2-1 21:44
代码工整,注释清晰! 就是忘了写排序,没有总分
作者: 吴迪 时间: 2016-2-1 21:48
,明天早上入学面试,,,感觉状态不好,题目都看不仔细了
作者: 洋葱头头 时间: 2016-2-2 07:53
不是放假了吗
作者: j6819236 时间: 2016-2-2 10:00
学号确实没写,粗心。。。
不过流确实关了,try(创建或者赋值流对象){读写代码}这种形式是自动关流,不然缓存区没读满数据也不会刷过去,参见1.7版本 流的try..catch..
作者: 洋葱头头 时间: 2016-2-2 10:36
原来是这样 是我孤陋寡闻
作者: 983859111 时间: 2016-2-2 12:34
Students.rar
(1.61 KB, 下载次数: 296)
呶,写完了,在这里。。。
求分分呀……{:2_42:}
作者: 983859111 时间: 2016-2-2 12:37
{:2_37:}版主都来混技术分啦?
作者: 洋葱头头 时间: 2016-2-2 12:55
写的完美
作者: 983859111 时间: 2016-2-2 13:34
谢谢版主夸奖……好开森{:2_36:}
作者: 酱油 时间: 2016-2-2 14:35
哈哈 是他逼我来给顶帖的!!!!
作者: 983859111 时间: 2016-2-2 14:37
被我抓到了,快交出来几个黑马币。。。
作者: 酱油 时间: 2016-2-2 14:37
禁止刷分!
作者: 983859111 时间: 2016-2-2 14:39
难道你不认我我做的题很棒么?我做的多好,你心里由衷的赞美,无以言表送几个黑马币怎么能算是刷分呢
作者: 酱油 时间: 2016-2-2 14:42
敢不敢不要这么自恋,,,,,,
自恋的人没有分!
作者: 983859111 时间: 2016-2-2 15:21
好吧,其实还好了。。也没有很自恋
作者: 酱油 时间: 2016-2-2 15:35
主要是我没法给分!!!!哈哈。。我是java的版主。。连黑马币都没法给你。
作者: 983859111 时间: 2016-2-2 15:37
好吧。。。以后去你的版去混
作者: Bobby1109 时间: 2016-2-2 16:04
看看我能得几分
-
-
student.rar
2.34 KB, 下载次数: 64
作者: Bobby1109 时间: 2016-2-2 16:18
那加上行吗,还差一分就25分了
作者: 洋葱头头 时间: 2016-2-2 16:23
不行 你自己没写 还有你又10黑马币 可以换的
作者: Bobby1109 时间: 2016-2-2 16:25
兑换后必须还要有10马币才能兑换啊
作者: 洋葱头头 时间: 2016-2-2 16:27
我想你这分也不着急把 就算着急 也不能刷分遵守规定 公平竞争
作者: Bobby1109 时间: 2016-2-2 16:30
只是觉得可惜啊,就差一点
作者: 洋葱头头 时间: 2016-2-2 16:34
我就不给 你咬我啊
作者: Bobby1109 时间: 2016-2-2 16:37
我对这图片也是无语了
作者: jdissx01 时间: 2016-2-3 03:37
本人1月13号进的黑马,写这些有点难度,有参考别人思路,求版主给技术分黑马币.
-
-
StuChengJi.zip
2.42 KB, 下载次数: 108
作者: 洋葱头头 时间: 2016-2-3 07:57
写得不错噢 尽量把过程封装到方法里 不要堆在主函数里
作者: 513402004 时间: 2016-2-3 14:57
新人啊- - 表示先马,过一阵再来!!!
作者: 洋葱头头 时间: 2016-2-3 15:39
一个星期一题
下个星期发个适合新人的
作者: jdissx01 时间: 2016-2-3 15:51
能写出来已经很不容易啦,多给点分分鼓励新人们,让大家都来答题撒~
作者: 洋葱头头 时间: 2016-2-3 16:01
按要求得技术分 不要急 这样的活动很多的
作者: 513402004 时间: 2016-2-3 16:07
好的, 麻烦了..
作者: 晓寒轻 时间: 2016-2-3 20:19
太忙。。没空了 。。。。
作者: 洋葱头头 时间: 2016-2-3 20:36
谢谢顶帖
作者: 狮子王 时间: 2016-2-3 22:21
原谅我基础忘光了
作者: 宋达思 时间: 2016-2-4 15:50
本帖最后由 宋达思 于 2016-2-4 16:06 编辑
首先感谢版主啦,能给大家一个那么好的机会,这种活动方式的确不错呦!
这个练习以前还是做过的,不过IO流已经好久没看了,忘得差不多啦,写的基本符合要求吧,测试过,应该没什么问题。
学生学习成绩信息.rar
(2.5 KB, 下载次数: 4)
作者: 姚成晖 时间: 2016-2-5 12:45
本帖最后由 我是坏人, 于 2016-2-5 13:50 编辑
版主辛苦~
-
-
学生信息按总分排序写入txt.zip
2.09 KB, 下载次数: 95
作者: 洋葱头头 时间: 2016-2-5 15:29
你这txt排版有点过分啊
作者: shiax11 时间: 2016-2-6 07:56
哎 我去试试
作者: 洋葱头头 时间: 2016-2-6 08:05
等你
作者: 姚成晖 时间: 2016-2-6 18:48
哈哈~速成版 混分的~
作者: linxiaom 时间: 2016-2-8 19:25
求技术分啊,楼主,等着入学考试!
作者: 洋葱头头 时间: 2016-2-8 19:28
答题答出来就给你喽
作者: renkuo023 时间: 2016-2-8 20:49
求分分啊
-
-
Students.rar
1.86 KB, 下载次数: 100
我的答案,求分分啊
作者: renkuo023 时间: 2016-2-8 23:03
太感谢啦
作者: olivec 时间: 2016-2-9 12:33
写完了 给加分吗
-
-
Student.rar
1.92 KB, 下载次数: 89
作者: ApiceLove 时间: 2016-2-9 19:42
版主春节快乐,求给分啊
-
-
Student.rar
55.79 KB, 下载次数: 65
作者: 洋葱头头 时间: 2016-2-9 20:28
等下啊 吃个饭去
作者: ApiceLove 时间: 2016-2-9 21:53
多谢版主,辛苦了哈
作者: boboyuwu 时间: 2016-2-10 21:56
虽然不需要技术分了,但是这个问题挺有意思的。呵呵我也来做一下 注释很详细哦
-
-
求学生成绩代码.zip
1.32 KB, 下载次数: 81
作者: yuchifeifan 时间: 2016-2-11 16:08
还有这活动吗
作者: 洋葱头头 时间: 2016-2-11 16:09
有
作者: 洋葱头头 时间: 2016-2-12 09:10
没人做的话 我就关闭了
作者: davy0119 时间: 2016-2-12 16:42
指导下啊,谢谢
-
-
stu.zip
1.2 KB, 下载次数: 63
作者: 洋葱头头 时间: 2016-2-12 16:55
你这一点提示都没有啊 总结注释也没写好歹是写出来了
作者: davy0119 时间: 2016-2-12 16:59
偷懒了,对不起,下次一定写
作者: wusiyi 时间: 2016-2-13 00:34
我明天也来试一试!
作者: CPY 时间: 2016-2-13 08:55
楼主新年好!给大家拜年了!祝大家在新的一年里顺顺利!黑马加油!
-
-
Student.zip
1.68 KB, 下载次数: 66
作者: 洋葱头头 时间: 2016-2-13 09:00
多给你一分 写的不错
作者: CPY 时间: 2016-2-13 09:02
谢谢楼主!
作者: 洋葱头头 时间: 2016-2-13 09:05
前几天没看到
作者: 洋葱头头 时间: 2016-2-13 09:06
好的 等你 不过快关闭了
作者: 洋葱头头 时间: 2016-2-13 09:09
谢自己干什么
作者: wusiyi 时间: 2016-2-13 21:01
楼主,快快打赏。我没只学到13天,IO流什么的都是临时看的几集,可能用得不好。不过功能是算是实现了的。
Test.zip
(2.16 KB, 下载次数: 102)
/*
写这个程序的时候我们都还没学IO流,所以也是临时看了几个视频写的,途中修修改改了好多次。也算是第一个用到IO流的程序吧,或许写得不怎么好,不过这只是个开始,今后会越来越好的。
1、先创建两个数组str和score用于存放输入的数据,创建的长度为6是因为作者本人比较懒,最后一个长度用来作为TEMP
2、使用for语句录入学生考试信息记录到str数组中,并计算总分记录到score数组里
3、使用for循环嵌套,判断总分大小并交换两个数组的内容
4、将str数组遍历输出到stu.txt文件中
*/
import java.util.Scanner;
import java.io.*;
class Test {
public static void main(String[] args) throws IOException {
String[] str = new String[6]; //创建用来存储录入数据的数组,str[5]用来后面交换数组中数据用的临时存储
int[] score = new int[6]; //创建用来存储总分的数组,同上
System.out.println("请输入(姓名,学号,语文,数学,英文)的格式进行录入数据!"); //提示用户输入的数据格式
Scanner sc = new Scanner(System.in); //创建一个类
for (int i = 0; i < 5; i++) { //for循环,从下标0开始,到下标为4结束
System.out.println("请输入第" + (i + 1) + "名学生的考试信息:");
str = sc.nextLine(); //输入学生考试的信息
String[] arrstr = str.split(","); //分割字符串并将结果赋值给数组arrstr
//计算总分
score += Integer.parseInt(arrstr[2]);
score += Integer.parseInt(arrstr[3]);
score += Integer.parseInt(arrstr[4]);
System.out.println(score); //打印总分,可以用来直观检验计算结果是否正确
}
//两层for循环嵌套,类似九九乘法表,就不解释了
for (int i = 0; i < 4; i++) {
for (int j = i + 1; j < 5; j++) {
//如果下一个索引中的总分大于上一个索引的总分,则交换其中的数据
if (score < score[j]) {
score[5] = score;
score = score[j];
score[j] = score[5];
str[5] = str;
str = str[j];
str[j] = str[5];
}
}
}
System.out.println(""); //仅为了美观,换行
FileWriter fw = new FileWriter("stu.txt"); //打开STU.TXT文件
for (int i = 0; i < 5; i++) { //for循环,将数据写入到stu.txt中
fw.write(str);
System.out.println(str);
fw.write("\r\n");
}
fw.close(); //结束操作,关闭IO流
System.out.println("");
System.out.println("已经将结果写入stu.txt文件中。"); //提示结束程序
}
}
作者: 洋葱头头 时间: 2016-2-13 22:54
先给分 明天再看 睡了
作者: wusiyi 时间: 2016-2-13 23:00
{:2_32:}以后有送分题就CALL ME。
作者: wusiyi 时间: 2016-2-13 23:02
Test.zip文件直接该后缀名为.java就可以了,那个不是真的压缩包。
作者: wjnaiwx 时间: 2016-2-13 23:29
这么好的事居然才看见!
作者: 洋葱头头 时间: 2016-2-14 08:04
今天就有
作者: 刺客015 时间: 2016-2-14 20:01
本帖最后由 洋葱头头 于 2016-2-14 20:38 编辑
- import java.io.*;
- import java.util.*;
- public class Test {
- public static void main(String[] args)throws Exception{
- //传入学生人数
- Student(5);
- }
- //键盘录入学生
- public static void Student(int number)throws Exception{
- //创建Scanner对象 接受从控制台输入
- Scanner in=new Scanner(System.in);
- //因为可能会出现姓名和总分都一样的学生,为了保证学生不丢失,建立List容器
- List list=new ArrayList();
- //循环录入学生到集合,排好顺序
- System.out.println("输入格式为: 姓名,语文,数学,英语");
- for(int x=1;x<=number;x++){
- System.out.println("请输入第"+x+"个学生的信息");
- String[] s=in.nextLine().split(",");
- int a=Integer.parseInt(s[1]);
- int b=Integer.parseInt(s[2]);
- int c=Integer.parseInt(s[3]);
- Student stu=new Student(s[0],a,b,c);
- list.add(stu);
- }
- //用比较器进行总分从高到低的排序
- Collections.sort(list,new StuCompare());
- //定义输出流输出到stu.txt
- BufferedWriter bufw=new BufferedWriter(new FileWriter("stu.txt"));
- for(Student stu:list){
- bufw.write(stu.getStu());
- bufw.newLine();
- bufw.flush();
- }
- //关闭资源
- in.close();
- bufw.close();
- }
- }
- //学生类型
- class Student{
- private String name;
- private int a, b, c,sum;
- //学生对象建立需要传入姓名和3门课的成绩
- Student(String name, int a, int b, int c){
- this.name=name;
- this.a=a;
- this.b=b;
- this.c=c;
- sum=a+b+c;
- }
- public int getsum(){
- return sum;
- }
- //输出一个符合格式的字符串
- public String getStu(){
- return name+" 数学:"+a+" 语文:"+b+" 英语:"+c+" 总分:"+sum;
- }
- }
- //定义比较器,按总分排序
- class StuCompare implements Comparator{
- public int compare(Student s1,Student s2){
- int a=new Integer(s2.getsum()).compareTo(s1.getsum());
- return a;
- }
复制代码
作者: zhang洁 时间: 2016-2-14 20:16
这么好?才看到
作者: 洋葱头头 时间: 2016-2-14 20:35
.你这排版
作者: wusiyi 时间: 2016-2-14 21:56
哪里啊,我怎么没有看到呢、
作者: 洋葱头头 时间: 2016-2-14 22:34
明天早上发... 困死了
作者: 洋葱头头 时间: 2016-2-15 09:28
http://bbs.itheima.com/thread-277107-1-1.html
看这里
作者: 洋葱头头 时间: 2016-2-15 09:31
http://bbs.itheima.com/thread-277107-1-1.html
传送门
作者: 参禅悟道 时间: 2016-2-15 16:22
现在做这道题,还有技术分吗
作者: 洋葱头头 时间: 2016-2-15 16:26
有的 这题比较比较好写
作者: 参禅悟道 时间: 2016-2-15 17:40
用的冒泡排序,最后把打印的功能提到一个方法里面了。
-
-
studentFen.rar
1.3 KB, 阅读权限: 100, 下载次数: 1
版主查阅
作者: yangyiqing 时间: 2016-2-15 18:58
还没学到..
作者: 洋葱头头 时间: 2016-2-15 19:03
加紧学习了
作者: sun288225 时间: 2016-2-15 19:05
求分分,绝对没问题,我的路径写的E盘哈
-
-
学生成绩排名哦.zip
790 Bytes, 下载次数: 68
作者: 洋葱头头 时间: 2016-2-15 19:13
你写错了把
作者: sun288225 时间: 2016-2-15 19:20
没有啊 我干脆手工直接打上来- import java.io.BufferedReader;
- import java.io.BufferedWriter;
- import java.io.FileWriter;
- import java.io.IOException;
- import java.io.InputStreamReader;
- import java.util.TreeSet;
- public class StirngDemo {
- public static void main(String[] args) {
- // 想读多少都可以,键盘输入格式 名字,成绩,成绩,成绩(注意逗号小写)
- try (BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
- BufferedWriter bw = new BufferedWriter(new FileWriter("e:\\stu.txt"))) {
- String str = null;
- // 建立规则从高分到低分
- TreeSet<Student> ts = new TreeSet<>((o1, o2) -> o2.sub() - o1.sub());
- while ((str = br.readLine()) != null) {
- if (str.equals("over"))
- break;
- String[] s = str.split(",");
- // 学生对象已new好存入集合中进行排序
- Student xue = new Student(s[0], Integer.parseInt(s[1]), Integer.parseInt(s[2]), Integer.parseInt(s[3]));
- ts.add(xue);
- }
- bw.write("姓名\t数学\t语文\t英语");
- bw.flush();
- bw.newLine();
- // 执行打印
- for (Student student : ts) {
- bw.write(student.getName()+"\t"+student.getShu()+"\t"+student.getYu()+"\t"+student.getYing());
- bw.newLine();
- bw.flush();
- }
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
- //学生对象,把名字各科成绩总分变成属性,给予总分方法
- class Student {
- private String name;
- private int shu, yu, ying;
- public String getName() {
- return name;
- }
- public Student(String name, int shu, int yu, int ying) {
- this.name = name;
- this.shu = shu;
- this.yu = yu;
- this.ying = ying;
- }
- public int getShu() {
- return shu;
- }
- public int getYu() {
- return yu;
- }
- public int getYing() {
- return ying;
- }
- public int sub() {
- return shu + ying + yu;
- }
- }
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |