如何对需要链接在一起的2个数组(char和int)进行排序

时间:2019-05-27 15:04:32

标签: c++

我有一个可以计算字母使用次数的程序,我需要对它进行排序,以便从字母开头开始。我该怎么做? 附言我尽力了。 (我还在学校学习,我的老师不在乎我们如何做,所以他没有解释如何正确地做,说了一些我们没有学到的东西,我们以后会学,但这需要仍然完成。

我试图进行排序和其他排序方法,但是我无法将它们链接在一起,因此它显示正确的用法数量,例如x最初为3(正确答案),最后显示为2等。

main ()
{
    ifstream tekstas; 
    ofstream rezultatas;
    tekstas.open ("tekstas.txt");
    char sim, raides [60]; 
    int n, kuri, kiekis [60], i ,j; 
    bool tinka, yra; 
    n = -1;
    for ( int i = 0; i < 60; i++)
    {
        raides[i] = ' '; 
        kiekis[i] = 0;
    }

    while ( tekstas.get (sim) ) 
    {
       kuri = 0; 
       tinka = ((sim != ' ') && (sim != '.') && (sim != ',') && (sim != '(') && (sim != ')'));
       tinka = ( tinka && (sim != '-') && (sim != ';') && (sim != '+'));        
       if ( tinka )
       {
           yra = false; 
           for ( int i = 0; i <= n; i++) if ( raides [i] == sim ) 
           {
               kuri = i; 
               yra = true; 
           }
           if ( yra ) kiekis[kuri]++; 
           else
           {
               n++; 
               raides[n] = sim;
               kiekis[n]++; 
           }
       }
    }

    rezultatas.open ("rez.txt"); 
    for (int i = 0; i <= n; i++) 
        rezultatas << raides[i] << "   " << kiekis[i] << endl; 

     rezultatas.close ();
     tekstas.close (); 
     return 0; 
}

我希望输出应该链接起来(如果像tekstas.txt文件中那样是3 x,那么在最终文件中应该是3 x),因此字母按字母顺序排列。

0 个答案:

没有答案