Şimdi Ara

C program #yardim#

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
4
Cevap
0
Favori
208
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Arkadaslar, Programlamda cok yeniyim ve söyle bir ödevim var;

    100 elemanlı bir karakter dizisi tanımlayan ve verilen cümle icerisinde harflerin hangi indeks de oldugunu belirten bir kod yazdim; ancak sadece ilk indeksi gösteriyor. Benim istedigim cümledeki harfin tüm konumlarini göstermek. Yardimci olursaniz cok sevinirim.


    #include <stdio.h>

    #include <string.h>

    #define MAX_SIZE 100 


    int indexOf(const char * strconst char toFindconst int n);



    int main()

    {

        char str[100];

        char toFind;

        int index;




        printf("Stringi yaziniz: ");

       fgets(str100, stdin);

        printf("Hangi harfi  ariyorsunuz: ");

        toFind = getchar();


        index = indexOf(strtoFind ,n);


        

       

            printf("'%c' indeks sayisi %d.",toFind,index+1);


        return 0;

    }





    int indexOf(const char * strconst char toFind,const int n)

    {

        int i = 0;

        char *cp=str;

         

        while(*cp != '\0')

        { for(i = 0str[i] != '\0'i++){

            if(str[i] == toFind)

            return i;

            i++;

        }

       

        }

        return 0;

    }




    < Bu mesaj bu kişi tarafından değiştirildi nano19 -- 13 Nisan 2021; 17:11:40 >







  • if(str[i] == toFind)

            return i;

            i++;


    Bu kısımda zaten ilk bulduğu anda indexi döndürüyor, i++ kısmına hiç gelmez. fonksiyon tamamlanmış oluyor burada. Burada return yerine arraya ekleyip onu döndürmek gerekli.

  • return ifadesi görüldüğü anda program aşağıdaki kodlara hiç bakmaz.


    Example;


    int MyTest(int numOne , int numTwo)

    {

    return numOne+numTwo;


    numOne ++;

    return numOne*numTwo;


    numOne +numOne ;

    return numOne/numTwo;


    numOne += 1;

    return numOne-numTwo;

    }


    MyTest(3,5);


    Çıktı olarak : 100.cü kez çalıştırsanız dahi 8 verecektir.




    < Bu mesaj bu kişi tarafından değiştirildi benimkucukbebegim -- 9 Mayıs 2021; 0:33:37 >
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.