北冥有鱼其名为鲲
2017-06-25 03:37
采纳率: 40%
浏览 1.0k
已采纳

Java 练习题,求教,数组和写入文件的综合题

如题,我不知道我错在哪了,运行不出来结果,编译器没有报错提示图片说明

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • 战在春秋 2017-06-25 06:40
    已采纳

    修改后的代码如下,关键处有注释

    import java.io.BufferedWriter;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.util.Scanner;
    
    public class test1 {
        /*
         * 键盘输入10个数,放到数组中 a.去除该数组中大于10的数 b.将该数组中的数字写入到本地文件number.txt中
         */
        public static void main(String[] args) throws IOException {
            Scanner sc = new Scanner(System.in);
            int[] sz = new int[10];
            int s = 0;
    
            FileWriter fw = new FileWriter("number.txt", true); //第二个参数为true,文件为添加(append)模式。
            BufferedWriter bw = new BufferedWriter(fw);
    
            for (int i = 0; i < 10; i++) {
                System.out.println("请输入第" + (i + 1) + "个数");
                sz[i] = sc.nextInt();
            }
    
            for (int i = 0; i < 10; i++) {
                if (sz[i] <= 10) {
                    s++;
                }
            }
    
            int[] sz2 = new int[s];
            int index = 0;
            for (int j = 0; j < 10 ; j++) {
                if (sz[j] <= 10) {
                    sz2[index] = sz[j];
                    bw.write(Integer.toString(sz2[index]) + ",");  //需将int转换为String类型
                    bw.flush(); 
                    index++;
                }
            }
    
            bw.close();
            fw.close();
        }
    }
    

    用心回答每个问题,如果对您有帮助,请采纳答案好吗,谢谢!

    已采纳该答案
    打赏 评论
  • 北冥有鱼其名为鲲 2017-06-25 03:39

    发现那个图不清晰。。。图片说明

    打赏 评论
  • 北冥有鱼其名为鲲 2017-06-25 03:44

    算了。直接上代码,图还是看不清。
    package mmb;

    import java.io.FileWriter;
    import java.io.IOException;
    import java.util.Scanner;

    public class test1 {
    /*键盘输入10个数,放到数组中
    a.去除该数组中大于10的数
    b.将该数组中的数字写入到本地文件number.txt中*/
    public static void main(String[] args) throws IOException {
    Scanner sc = new Scanner(System.in);
    int[] sz = new int[10];
    for (int i = 0; i < 10; i++) {
    System.out.println("请输入第"+(i+1)+"个数");
    sz[i] = sc.nextInt();

                int s =0;
                if(sz[i]<=10){
                    s++;                    
                int[] sz2 = new int[s];
                for (int j = 0; j < sz2.length; j++) {
                    sz2[j] = sz[i];     
                    FileWriter fw = new FileWriter("number.txt");
                    fw.write(sz2[j]);
                }
                }                       
        }
    }
    

    }

    打赏 评论
  • 北冥有鱼其名为鲲 2017-06-25 06:09

    别沉啊。。。。。。。。

    打赏 评论

相关推荐 更多相似问题