Şimdi Ara

C programlama string hakkında yardım

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
3 Misafir - 3 Masaüstü
5 sn
6
Cevap
0
Favori
93
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Arkadaşlar merhaba umarım konuyu doğru yere açmışımdır fazla uzatmadan konuya gireyim.

    C programlamada stringler hakkında yardıma ihtiyacım var.


    Aşağıda yazdığım örneğin kodunu yazdım doğru mu değil mi bilmiyorum.


    Her birisi en fazla 10 karakter uzunluğunda olacak 7 tane ismi

    klavye ile girerek adlar isimli bir dizi oluşturunuz.

    Dizideki ismi b/B harfleriyle başlayan isim sayısını bulunuz ve yazdırın.


    #include "stdafx.h"
    #include <stdio.h>
    #include <string.h>
    #include <stdlib.h>
    #include <conio.h>

    int main()
    {
    int i;
    int a=0;
    char adlar[7][10];

    for(i=0;i<7;i++)
    {
    printf("%d. ismi giriniz: ", i+1);
    scanf("%s", adlar[i]);


    if(adlar[i]=="B" || adlar[i]=="b")
    a=a+1;


    }

    printf("ismi B/b ile baslayan isim sayisi: %d",a);
    printf("\n");

    getch();
    return 0;
    }


    Çalıştırdığımda B sayısını bulmuyor sorunun tam olarak nerede olduğu hakkında en ufak fikrim yok, internette araştırdım benzer örnekleri ama bulamadım en son çare olarak buraya geldim. Yardımcı olabilirseniz çok mutlu olurum.









  • adlar[] dediğin bir dizi olduğu için senin stringin ilk harfini alman lazım. İlk girdiğim "Bursa " olsun senin kodunda
    "Bursa " == "B" kıyaslaması yapıyorsun yanlış olmuş yani.
    Ayrıca string ifadeler c dilinde == ile compre edilmiyor diye hatırlıyorum strcmp() fonksiyonu araştır.

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • K3BL4 kullanıcısına yanıt

    Sorunu çözdüm if(adlar[i][0]=='B' || adlar[i]=='b') şeklinde olacakmış teşekkür ederim yine de

  • xenith689 X kullanıcısına yanıt

    Küçük 'b' olanlar içinde aynısını yapın gözden kaçmasın.


    < Bu ileti mobil sürüm kullanılarak atıldı >
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.