Konular

C Programlama switch - case Yapısı

switch - case Yapısı : Bu yapı bir değişkenin içeriğine bakarak, programın akışını bir çok seçenekten birine yönlendirir. case (durum) yapısından sonra değişkenin durumu belirlenir ve sonraki gelen satırlar işleme girer. Aksi söz konu olduğunda gerçekleştirilmesi istenen deyimler default deyiminden sonraki kısımda bildirilir. Kısaca yapının temel amacı  değişkenin değerine göre programın çalışmasına yön vermektir. Aynı işlem if else yapısı ilede uygulanabilsede daha kolay okunması nedeniyle programcılar tarafından tercih edilmektedir.
 
switch - case yazım biçimi  ve akış diyagramı :
switch( degisken ) {
 case sabit1:
  komut(lar)
  [break]
 case sabit2:
  komut(lar)
  [break]
 .
 .
 .
 case sabitN:
  komut(lar)
  [break]
 default:
  komut(lar);
} 
C Programlama switch - case Yapısı
Örnek  sitch - case kullanımı 1 :
#include <stdio.h>

int main(int argc, const char * argv []) {
int s1 =0;
printf("Lutfen bir sayi giriniz:");
scanf("%d" , &s1);

switch (s1){
case 1:
    printf("Girilen sayi degeri: 1n");
    break;
case 2:
    printf("Girilen sayi degeri: 2n");
    break;
default:
    printf("Girilen sayi degeri gecersiz n");
    break;
        }
return 0;
}
 
Örnekte girilen integer deger sayının 1 veya 2'ye eşit olup olmadığının kontrolü yapılmaktadır. Programa 1 veya 2 dışında bir deger girildiğinde ekran "Girilen sayi degeri gecersiz" ifadesi yazdırılmaktadır.
 
Örnek  sitch - case kullanımı 2 :
#include <stdio.h>

int main(void)
{
     char karakter;

     printf("Lutfen bir karakter giriniz:n");

     karakter = getchar(); 
     switch (karakter)
     {
       case 'a':
          printf("a karakterini girdinizn");
          break;
       case 'b':
          printf("b karakterini girdinizn");
          break;
       default:
          printf("a veya b karakterlerinden birisini girmedinizn");
          break;
     }

return 0;
}
 
Default Anahtar Kelimesi : Kelime anlamı olarak varsayılan demektir. Eğer, switch satırındaki değişken değeri case satırlarında yer alan sabit değerlerin herhangi biri ile aynı değeri taşımıyorsa, program default satırında yer alan işlem satırı veya satırlarını çalıştırır. default satırının tanımlanması tamamen isteğe bağlıdır. Yani, bu satır tanımlanmasa bile switch kalıbı normal olarak çalışır.
 
Break Anahtar Kelimesi : switch - case yapısında bir koşulda break anahtar kelimesi kullanılmaz ise  koşuldan sonra gelen koşul otomatik olarak çalışır. Break anahtar kelimesi tanımlanmasıda aynen default gibi isteğe bağlıdır.

Örnek : 
#include <stdio.h>

int main(void)
{
     char fenerbahce, besiktas, galatasaray;

     printf("Lutfen bir karakter (b,f,g) giriniz:n");

     fenerbahce, besiktas, galatasaray  = getchar();
     switch (fenerbahce, besiktas, galatasaray)
     {
       case 'f':
          printf("fenerbahcen");
          break;
       case 'b':
          printf("besiktasn");
          break;
       case 'g':
          printf("galatasarayn");
          break;
       default:
          printf("b,f,g karakterlerinden birisini girmedinizn");
          break;
     }

return 0;
}

C Programlama SWITCH CASE Örnek

 
C Programlama switch - case Yapısı
Dışardan girilen bir sayi için;
f:faktöriyel hesabı yapan,
i:girilen sayı kadar isim yazan
t:girilen sayıya kadar kaç tane tek var
y:girilen sayıya kadar kaç tane cift var

İşlemlerini yapan yapan programı switch case ile yazınız.
Program sonunda; Devam etmek istiyormusun(E/H) sorusuyla başa dönmelidir.
Faktöriyel döngüsü do while; isim yazdırma döngüsü while ile yazılmalıdır.
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

int main(void)
{
    gidilecekYer: ;
    system("cls");       
    int s;
    int f=1;
 int u=1;
 int x,m;
 char z;

    printf ("Islem Yapilacak Sayiyi Giriniz: ");
    scanf("%d",&s);
 printf("nn(f) Faktoriyel Hesapla"); 
 printf("n(i) Girilen Sayi Kadar Isim Yaz");
 printf("n(t) Sayiya kadar kac adet tek sayi var");
 printf("n(y) Sayiya kadar kac adet cift sayi varnn"); 
 
 scanf("%s",&z);
    
      switch (z) {
  case 'f':
   do
   {
   f=f*s;
   s--;
   }
   while (s!=1); //sayi 1 e esit degilse dönecek. do calisacak.
   printf ("Faktoriyel Sonuc: %d",f);
   break;
    case 1:
   printf ("1e");
   break;
        case 'i':
   m=1;
   while (m<s+1)
   {
   printf ("BAYRAKTARn");
   m++;
   }
   break;
      
        case 't':
   for(m=0;m<s+1;m++)
   {
    if(m%2==1)
    {
   printf("tek sayi: %d",m);
    }
   }
   break;
   
  case 'y':
   x=1;
   for(m=0;m<s+1;m++)
   {
    if(m%2==0)
    {
   printf(x+".cift sayi: %d",+m);
   x++;
    }
   }
   break;   
   
            default: printf("Hatali Deger Girdin"); break;
} 
   
   char x2; 
   printf("nnDevam Etmek istiyor musunuz ? (e/h)n");
   scanf("%s",&x2); 
   
 
   if(x2=='e')
   {
               goto gidilecekYer;
} 
}
 
Yorumunuzu Ekleyin
C Programlama Dilinde Değişkenler

Değişkenler bir programlama dilinin en önemli bileşenlerindendir. En basit bir aritmetik işlemin bile kullanıcının girdiği değerleri saklamak için çeşitlik bellek alanlarına ihtiyacı vardır. İşte değişkenler bu bellek adreslerine verilen isimlerdir.

10,904 Okunma 1 Yorum 12/05/2015 00:26:24 22/05/2015 19:41:38

DEV C++ Kurulumu

C çalışmak için bir editöre ve Derleyiciye ihtiyacınız var. Belkide en kolay çözüm DEV C++ kullanmak. Çünkü ücretsiz ve GNU lisansı ile dağıılmakta ve Mingw/GCC derleyiciside içerisinde bulunmaktadır.

8,562 Okunma 0 Yorum 12/05/2015 14:32:18 12/05/2015 14:33:21

C Programlama printf() Fonksiyonu

Standart C kütüphanesinin bir parçası olan printf() C Programlama Dili'nin genel amaçlı çıktı alma fonksiyonudur.

8,414 Okunma 0 Yorum 22/05/2015 18:53:57 03/06/2015 15:57:27

C Diline Giriş

Blok Yapısı, Açıklamalar, Boşluklar, Kapsam

8,075 Okunma 0 Yorum 15/05/2015 19:07:26 29/05/2015 14:03:24

Operatörler

C programlamada toplama, çıkarma, çarpma, mod alma operatörleri

7,291 Okunma 0 Yorum 29/05/2015 16:49:24 29/05/2015 16:49:35

Yükleniyor...