简单的事情复杂做

昨天要统计下我们班那些人的毕设报告没有交。提交名单是提交在一个excel里,其实可以用excel自带的sort来查一下就行了。不过为了装逼一把,我就打算写个程序来做这件事情。最正常的应该是用cpp来写了,因为我最熟悉这个。不过打算挑战下自己,我就写了四个语言版本的。c++/java/python/go
花时间最多的就是go的版本,感觉go和C差别还是有点大的。其它三个给我的感觉都是C家族语言。代码就是下面的:

package main

import "os"
import "fmt"
import "bufio"
import "sort"

func main(){
    arr :=make([]string,0)
    filename:="num.txt"
    fp,_:=os.Open(filename)
    r:=bufio.NewReader(fp)
    content,e:=r.ReadString('\n')
    for e==nil {
        arr=append(arr,string(content))
        content,e=r.ReadString('\n')
    }
    sort.Strings(arr)
    var i=0
    for ;i<len(arr);i++ {
        fmt.Print(arr[i])
    }
    fmt.Print("The size is: ",len(arr))
}

C++ version

#include <fstream>
#include <iostream>
#include <cstddef>
#include <vector>
#include <algorithm>
#include <string>
using namespace std;
int main(int argc,char **argv){
    vector<string> ivec;
    string num;
    fstream f("num.txt");
    while(!f.eof()){
        f>>num;
        ivec.push_back(num);
    }
    std::sort(ivec.begin(),ivec.end());
    for(auto it : ivec)
        cout<<it<<endl;
    return 0;
}

Python version

#coding=utf-8
fp=open("num.txt",'r');
l=list(fp)
l.sort()
for con in l:
    print(con,end="")

Java version

import java.io.*;
import java.util.*;
public class findID{
    private String filename="num.txt";
    private LinkedList<String> ll=new LinkedList<String>();
    private int i=0;
    private void readData()throws IOException{
        String s=null;
        BufferedReader br=new BufferedReader(new FileReader(filename));
        while((s=br.readLine())!=null){
            ll.add(s);
            i++;
        }
        Collections.sort(ll);
    }
    private void printData()throws IOException{
        while(!ll.isEmpty()){
            String s=ll.pop();      
            System.out.println(s);
        }
        System.out.println("thers's " + i + " players");
    }
    public static void main(String[] args)throws IOException{
        findID f=new findID();
        f.readData();
        f.printData();
    }
}

这些东西也没什么,就是一个读取文件,排序,打印的逻辑。不过Python真是简洁呀,,6行就把事情做了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值