0

私は再帰でかなり新しいです。2 つの関数を記述する必要があります。これまでのところ、文字列の長さを見つける権利を与えるものを書きました。ただし、2 つ目は、配列内の繰り返し文字を見つけるのが非常に難しいことがわかっています。私は例を見つけようとしてウェブを精査しました。私は多くの読書を行ってきましたが、これまでのところ何もしていません。ですから、正しい方向に私を向けることができれば、本当に感謝しています.

ありがとうございました

//length( ) -- this function is sent a null terminated array of characters.  
    //The function returns the length of the "string".    
    long slength (const char ntca[])
        {
            int length = 0;

            if (ntca[length] == '\0'){
                return 0;
            }
            else{
                return  slength(ntca+1)+1;
            }
        }

        //countall( ) -- This function is sent a null terminated array of characters 
        //and a single character.  The function returns the number of times the character 
        //appears in the array.

        long countall (const char ntca[],char letter){

            int position = 0;
            int counter = 0;
            long length = slength(ntca);

            if (length == 0)
                return 0;

            else if (ntca[position]==letter)
                return 1 + countall(ntca-1,letter);
            else 
                return countall(ntca,letter);


        }
4

1 に答える 1