第二次作业

作业地址:【https://edu.cnblogs.com/campus/nenu/2016CS/homework/2139

要求0:https://git.coding.net/xup457/wfAnalysis.git

要求1:

 

 

 

 

 

 

 

问了老师很多问题,老师完全不理我,也不回答我的问题,只管“会说话”的同学,还在群里发带有图书价格的链接,不知道为什么好奇怪啊。

要求2:

#include<bits/stdc++.h>
#include<io.h>
#define ll long long
#define debug(x) cout<<#x<<"  : "<<x<<endl;
#define psl pair<string , ll>

using namespace std;

bool XUP_num_get(string &XUP_pp , int& file_num)
{
    string tmp = "";
    auto i = XUP_pp.find("-n");
    if( i == string::npos )
        return 0;
    i += 3;
    for(;i < XUP_pp.size() ; i++ ){
        if( XUP_pp[i] == ' ' )
            break;
        tmp += XUP_pp[i];
    }
    stringstream ss;
    ss<<tmp;
    ss>>file_num;
    return 1;
}

void get_all_file(string XUP_path , vector<string>& son_files , string XUP_fmat)
{
    long hFile = 0;
    struct _finddata_t fileinfo;
    string p;
    if( ( hFile = _findfirst( p.assign( XUP_path ).append("\\*" + XUP_fmat).c_str() , &fileinfo ) )  != -1 )
    {
        do
        {
            if( fileinfo.attrib & _A_SUBDIR ){
                if( strcmp( fileinfo.name , "." ) != 0 && strcmp( fileinfo.name , ".."  ) != 0 )
                    get_all_file( p.assign(XUP_path).append("\\").append(fileinfo.name), son_files , XUP_fmat );
            }
            else
                son_files.push_back( p.assign( fileinfo.name ) );

        }while( _findnext( hFile , &fileinfo ) == 0 );
        _findclose(hFile);
    }
}

void XUP_read_txt(string file_name , string& str)
{
    ifstream file;
    file.open( file_name.c_str() );
    string s;
    while( getline( file , s ) )
        str = s + ' ' + str;
    transform( str.begin() , str.end() , str.begin() , ::tolower  );
    file.close();
}

struct cmp
{
    bool operator ()(const psl& a , const psl& b){
        return a.second != b.second ? a.second > b.second : a.first < b.first;
    }
};
//, string XUP_s
void XUP_solve( string XUP_input_str   )
{
    map<string , ll> mp;
    string str = "" , tmp = "";

    string file_name ;
    string son_str;

    ifstream file;
    file.open( file_name.c_str() );
    string son_s;
    while( getline( file , son_s ) )
        son_str = son_s + ' ' + son_str;
    transform( son_str.begin() , son_str.end() , son_str.begin() , ::tolower  );
    file.close();

    int file_num;
    bool limit = XUP_num_get( XUP_input_str , file_num );
    for( auto ch : str ){
        if( ch >= '0' && ch <= '9' || ch >= 'a' && ch <= 'z' ){
            tmp += ch;
            continue;
        }
        if( !tmp.empty() ){
            if( tmp[0] >= 'a' && tmp[0] <= 'z' )
                mp[tmp]++;
            tmp = "";
        }
    }
    if( !tmp.empty() ){
        if( tmp[0] >= 'a' && tmp[0] <= 'z' )
            mp[tmp]++;
        tmp = "";
    }
    if( !limit ){
        cout<<"total "<<mp.size()<<endl;
        puts("");
        for( auto it : mp )
            cout<<left<<setw(30)<<it.first<<it.second<<endl;
    }
    else{
        cout<<"Total words is "<<mp.size()<<endl;
        puts("------------------");
        vector<psl> vec( mp.begin() , mp.end() );
        sort( vec.begin() , vec.end() , cmp() );
        for( auto it : vec ){
            cout<<left<<setw(30)<<it.first<<it.second<<endl;
            file_num--;
            if( !file_num )
                break;
        }
    }
}



bool XUP_File_get(const string now , string &File_Name)
{
    auto i = now.find("-c");
    if( i == string::npos )
        return false;
    i += 3;
    for(;i < now.size() ; i++ ){
        if( now[i] == ' ' )
            break;
        File_Name += now[i];
    }
    return true;
}

bool XUP_Path_get(const string now , string &Path_Name)
{
    auto i = now.find("-f");
    if( i == string::npos )
       return false;
    i += 3;
    for(;i < now.size() ; i++ ){
        if( now[i] == ' ' )
            break;
        Path_Name += now[i];
    }
    return true ;
}

int main()
{
    string XUP_input_str , XUP_File_Name = "" , XUP_Path_Name = "" , XUP_files = "" , XUP_real_file;
    getline( cin  , XUP_input_str );
    bool have_Path = XUP_Path_get( XUP_input_str , XUP_Path_Name );
    bool have_File = XUP_File_get( XUP_input_str , XUP_File_Name );
    if( have_Path ){
        vector<string> files;
        const string format = ".txt";
        get_all_file( XUP_Path_Name , files , format );
        sort( files.begin() , files.end() );
        XUP_real_file = XUP_Path_Name + "\\" + files[0];
    }
    else
        XUP_real_file = XUP_File_Name;
    XUP_solve(XUP_input_str );//, XUP_real_file
    return 0;
}

/*
wf -f D:\ACM±à³Ì\±ÈÈüÖÐ -n 2
wf -c pipifan.txt
*/

助教和请来的老师在留这项作业的时候没有考虑我们的进程,留的都是些老师课上不讲的内容,然后一个个的又不回答问题,任重道远啊。

要求三:

请老师认真对待,珍惜每一个向您提问的学生,请老师认真负责谢谢。这次作业真的由于老师的应付,使得我的心里觉得老师们是对同学有偏见的,我们素未蒙面,便有此想法真的不好,同时我也期待老师可以回答我的问题

总结:

 

看到了老师的要求四,真是觉得很商场不是很学校,请你们在你们评判标准中加入人性,我看了邹欣老师微博以及博客,他是一位很有理想的老师,你们这种无人道的评判标准会是邹欣老师的理想远离他,请不要这么做,谢谢。而且不同的语言在运行相同功能上本来就有先天缺陷,你们如此不做分类的评价真的好吗?态度上认真了吗?

你们竟然明目张胆的说不是对道德评价,天啊,教育不论道德,你们真是,哎,没想到啊

posted on 2018-10-01 07:05  非人之刃  阅读(190)  评论(0编辑  收藏  举报