• 10-04-2010, 08:53:21
    #1
    Merhaba arkadaşlar dün C quiz'ine girdik okulda ve quiz sorusunda iki tam sayı ve 4 karekter kullanılarak girilen her karekter ile tam sayıların swtich yöntemiyle işleme sokulması isteniyor.

    bunu yaptım ama patladı çalışmadı

    #include <stdio.h>

    int main ()
    char main ()
    {
    int VAR1,VAR2;
    char a,s,d,m;
    printf("2 Sayi Giriniz.\n");
    scanf("%d%d",&VAR1,&VAR1);
    printf("a, s, d ve m karekterlerinden birini giriniz\n");
    scanf("%c%c%c%c",&a,&s,&d,&m);
    switch()
    {
    case a:
    printf ("Cevap: %d",VAR1+VAR2);
    break;
    case s:
    printf("Cevap: %d",VAR1-VAR2);
    break;
    case d:
    printf("Cevap: %d",VAR1*VAR2);
    break;
    case m:
    printf("Cevap: %d",VAR1/VAR2);
    break;
    default:
    printf("a s d m den birini gir");
    }
    return 0;
    }


    Yardımlarınız için şimdiden teşekkürler.
  • 10-04-2010, 17:31:37
    #2
    Tigris_Medya adlı üyeden alıntı: mesajı görüntüle
    Merhaba arkadaşlar dün C quiz'ine girdik okulda ve quiz sorusunda iki tam sayı ve 4 karekter kullanılarak girilen her karekter ile tam sayıların swtich yöntemiyle işleme sokulması isteniyor.

    bunu yaptım ama patladı çalışmadı

    #include <stdio.h>

    int main ()
    char main ()
    {
    int VAR1,VAR2;
    char a,s,d,m;
    printf("2 Sayi Giriniz.\n");
    scanf("%d%d",&VAR1,&VAR1);
    printf("a, s, d ve m karekterlerinden birini giriniz\n");
    scanf("%c%c%c%c",&a,&s,&d,&m);
    switc()
    {
    case a:
    printf ("Cevap: %d",VAR1+VAR2);
    break;
    case s:
    printf("Cevap: %d",VAR1-VAR2);
    break;
    case d:
    printf("Cevap: %d",VAR1*VAR2);
    break;
    case m:
    printf("Cevap: %d",VAR1/VAR2);
    break;
    default:
    printf("a s d m den birini gir");
    }
    return 0;
    }


    Yardımlarınız için şimdiden teşekkürler.
    Karakterleri Tek tırnak içine almayı deneyiniz.
    Ve tek karakter oldugunudan getch() veya getchar() komutları ile almayı deneyiniz.
  • 11-04-2010, 01:02:34
    #3
    case karekterlerinden bahsediyorsanız onların yapısı öyle doğru yani
    switch yolu olarak bir x sayısı girdim x i hem char hem de int olarak tanıtmama rağmen yine çalışmadı
  • 11-04-2010, 01:08:12
    #4
    switch patlarmı bilmem ama

    int main ()
    char main ()
    bunların alt alta düzgün çalışma ihtimali varmı ?ben ilk kez gördüm ama oluyorsa hata yok
  • 11-04-2010, 01:16:34
    #5
    oluyor die biliyordumda char main() ve char ile tanıttığım karekterlide %d ile tanıttığımda case de 1 2 3 4 benzeri girdiğim çalışıyor yani sorun karekter tanıtımında sanırım.
    normal karekter olarak girdiğimde case is not constant dio yani case sabit olarak tanımıyo
  • 11-04-2010, 17:09:29
    #6
    Kimlik doğrulama veya yönetimden onay bekliyor.
    yapmaya çalıştığın buydu sanırım

    #include <stdio.h>
    #include <conio.h>
    #include <locale.h>
    
    int main ()
    {
    int VAR1,VAR2;
    char cevap;
    setlocale(LC_ALL,"turkish");
    printf("2 Sayi Giriniz. Aralarında 1 Boşluk Bırakınız\n");
    scanf("%d %d",&VAR1,&VAR2);
    printf("a, s, d ve m karekterlerinden birini giriniz: ");
    cevap= getche();
    switch(cevap)
    {
    case 'a':printf ("\nCevap: %d\n",VAR1+VAR2);break;
    case 's':printf("\nCevap: %d\n",VAR1-VAR2);break;
    case 'd':printf("\nCevap: %d\n",VAR1*VAR2);break;
    case 'm':printf("\nCevap: %d\n",VAR1/VAR2);break;
    default:printf("\nHata: a s d m den birini gir\n");
    }
    return 0;
    }


    ifade ettigin soru bu yonde olmalı cunku tam anlasılmıyor
    tam ifade edersen daha iyi yardımcı olunabılır

    hemde switch icerisindeki case ifadelerındekı tipler const yanı sabıtlerden baskası olamaz ya oralara benım yazdıgım gıbı ıfade yazcaksın yada sabitliğini garanti ediceksin yanı

    const char a; gibi tanımlama yapıcaksın ve bu da program boyunca ılk verılen deger harıcı degıstırılemez
  • 11-04-2010, 22:47:33
    #7
    Twinsens adlı üyeden alıntı: mesajı görüntüle
    yapmaya çalıştığın buydu sanırım

    #include <stdio.h>
    #include <conio.h>
    #include <locale.h>
    
    int main ()
    {
    int VAR1,VAR2;
    char cevap;
    setlocale(LC_ALL,"turkish");
    printf("2 Sayi Giriniz. Aralarında 1 Boşluk Bırakınız\n");
    scanf("%d %d",&VAR1,&VAR2);
    printf("a, s, d ve m karekterlerinden birini giriniz: ");
    cevap= getche();
    switch(cevap)
    {
    case 'a':printf ("\nCevap: %d\n",VAR1+VAR2);break;
    case 's':printf("\nCevap: %d\n",VAR1-VAR2);break;
    case 'd':printf("\nCevap: %d\n",VAR1*VAR2);break;
    case 'm':printf("\nCevap: %d\n",VAR1/VAR2);break;
    default:printf("\nHata: a s d m den birini gir\n");
    }
    return 0;
    }


    ifade ettigin soru bu yonde olmalı cunku tam anlasılmıyor
    tam ifade edersen daha iyi yardımcı olunabılır

    hemde switch icerisindeki case ifadelerındekı tipler const yanı sabıtlerden baskası olamaz ya oralara benım yazdıgım gıbı ıfade yazcaksın yada sabitliğini garanti ediceksin yanı

    const char a; gibi tanımlama yapıcaksın ve bu da program boyunca ılk verılen deger harıcı degıstırılemez
    Evet hocam aradığım şey tam olarak bu çok çok teşekkür ederim
    #include <conio.h>
    #include <locale.h>
    setlocale(LC_ALL,"turkish");
    bize daha bunları göstermediler ama sormaları çok mantıksız
    neyse tekrar çok teşekkürler
  • 12-04-2010, 00:31:22
    #8
    Tigris_Medya adlı üyeden alıntı: mesajı görüntüle
    Evet hocam aradığım şey tam olarak bu çok çok teşekkür ederim
    #include <conio.h>
    #include <locale.h>
    setlocale(LC_ALL,"turkish");
    bize daha bunları göstermediler ama sormaları çok mantıksız
    neyse tekrar çok teşekkürler

    önemli değil herzaman
    onlarsızda yapılabılıyor du ama daha acık olsun dıe ben sadece verdım onları