21 Mart 2013 Perşembe

Stringler Slaytının Sonundaki Bazı soruların Çözümleri

1. strlen,strcpy,strcat,strcmp fonksiyonları kendiniz yazınız. 
a) SrtLen (fonksiyon haline getiririm daha sonra)
#include <stdio.h>
#include <string.h>

int main(){
char yazi_iste[200]={0};
int i=199,b=1;
printf ("Lutfen Metini Giriniz:");
gets(yazi_iste);

while(b){
if(yazi_iste[i]!=0){
b=0;
}
else {
b=1;
i--;
}
}
printf("Yazdiginiz String %d Uzunlugundadir\n",i+1);
}
 
2. Klavyeden girilen bir metni tersten yazdırınız.(metin max 200 karakter olsun)
#include <stdio.h>
#include <string.h>

int main(){
char yazi_iste[200]={0};
char yedek[200]={0};
int i=199,a,b=1;
printf ("Lutfen Metini Giriniz:");
gets(yazi_iste);

while(b){
if(yazi_iste[i]!=0){
b=0;
}
else {
b=1;
i--;
}
}
printf("%d\n",i);
for(a=0;i>=0;i--,a++){
yedek[a]=yazi_iste[i];
}

printf("%s\n",yedek);
printf("%s\n",yazi_iste);
}


3 . Klavyen girilen bir metnin kelimelerini ayırıp alt alta yazdırınız

#include <stdio.h>
#include <string.h>

int main(){
char yazi_iste[200]={0};
char yedek[200]={0},c;
int i=199,a;
printf ("Lutfen Metini Giriniz:");
    gets(yazi_iste);

i=strlen(yazi_iste);
   
for(a=0;a<i+1;a++){
    if(yazi_iste[a]== 32){
        printf("\n");
    }
    else {
        c = yazi_iste[a];
        printf("%c",c);
}
}
} 


4.Klavyeden girilen bir metinde aşağıdaki işlemleri yapan bir c kodu yazınız.

Seçenekler bir menü olsun çıkış için “e” harfine basılsın.

1.Küçük harfleri büyük harfe büyük harfleri küçüğe çeviriniz.

2.Tümünü büyük harfe çeviriniz.

3.Tümünü küçük harfe çeviriniz.

4.Kelimelerin ilk harfi büyük diğerlerini küçük harf yapınız

#include <stdio.h>
#include <string.h>
#include <ctype.h>
int kucuk_buyuk(char kucukbuyuk[]){
    int a=0,i=0,b=0;
    i=strlen(kucukbuyuk);
for(a=0;a<i;a++){
    if(64<(int)kucukbuyuk[a] && (int)kucukbuyuk[a]<91){
        b=(int)kucukbuyuk[a];
        b=b+32;
        kucukbuyuk[a]=b;
        printf("%c",kucukbuyuk[a]);
    }
    else if(kucukbuyuk[a]==32)
        printf("%c",kucukbuyuk[a]);
    else if(96<kucukbuyuk[a] && kucukbuyuk[a]<123){
    b=(int)kucukbuyuk[a];
        b=b-32;
        kucukbuyuk[a]=b;
        printf("%c",kucukbuyuk[a]);
        }
  
    else
        printf("Yazi Giriniz");
}
return 1;
}

int buyuk(char buyuk[]){
    int a=0,i=0,b=0;
    i=strlen(buyuk);
for(a=0;a-1<i;a++){
    if(96<buyuk[a] && buyuk[a]<123){
    b=(int)buyuk[a];
        b=b-32;
        buyuk[a]=b;
        printf("%c",buyuk[a]);
    }
        else if(buyuk[a]==32)
        printf("%c",buyuk[a]);

        else if(64<(int)buyuk[a] && (int)buyuk[a]<91){
        printf("%c",buyuk[a]);
    }
    else
        printf("Yazi Giriniz");
}
}

int kucuk(char kucuk[]){
    int a=0,i=0,b=0;
    i=strlen(kucuk);
    for(a=0;a<i;a++){
    if(64<(int)kucuk[a] && (int)kucuk[a]<91){
        b=(int)kucuk[a];
        b=b+32;
        kucuk[a]=b;
        printf("%c",kucuk[a]);
    }
    else if(kucuk[a]==32)
        printf("%c",kucuk[a]);

    else if(96<kucuk[a] && kucuk[a]<123){
    b=(int)kucuk[a];
        printf("%c",kucuk[a]);
        }
    else
        printf("Yazi Giriniz");
}
return 1;
}

int ilk_buyuk(char ilkbuyuk[]){
    char point[100],t;
    int i,a=0,b=0,c=0,z=0;
    i=strlen(ilkbuyuk);
    printf("\n");
    t=ilkbuyuk[0];
    ilkbuyuk[0]=toupper(t);
    for(z=0;z<i+1;z++);
    ilkbuyuk[z]=tolower(ilkbuyuk[z]);
    for(a=0;a<i+1;a++){
    if((int)ilkbuyuk[a]==32){
        point[b+1]=ilkbuyuk[a+1];
        point[b]=ilkbuyuk[a];
        if(96<point[b+1] && point[b+1]<123){
    c=(int)point[b+1];
        c=c-32;
        ilkbuyuk[a+1]=c;
        printf("%c",32);
        printf("%c",ilkbuyuk[a+1]);
        a=a+1;      
    }
        else if(point[b+1]==32)
        printf("%c",point[b+1]);

        else if(64<(int)point[b+1] && (int)point[b+1]<91){
        printf("%c",32);
        printf("%c",point[b+1]);
        a=a+1;
    }

    }
    else
        printf("%c",ilkbuyuk[a]);
    }
}
int main(){
    char b[200]={0},c[200]={0};
    int i;
    printf("Lutfen Yaziyi Giriniz");
    gets(b);
    printf("Lutfen Yapmak Istediginizi Seciniz:\n1.Buyuklerle kucukleri yer degistir.\n2.Hepsini Buyuk yap\n3.Hepsini Kucuk Yap\nCikmak icin (e) ye basiniz");
    scanf("%d",&i);
    switch(i){
    case 1:
        kucuk_buyuk(b);
        break;
    case 2:
        buyuk(b);
        break;
    case 3:
        kucuk(b);
        break;
    case 4:
        strcpy(c,b);
        printf("Girdiginiz metinin Harfleri Kucuk Hali:");kucuk(c);
        strcpy(b,c);
        ilk_buyuk(b);
    case 'e':
        return 0;
    }
}


5. Klavyeden girilen bir stringi parça parça ekrana yazdırınız. 
#include <stdio.h>
#include <string.h>

int main(){
char yazi_iste[10]={0};
int i=9,b=1,a=0,c;
printf ("Lutfen Metini Giriniz:");
gets(yazi_iste);
i=strlen(yazi_iste);
a=i;
for(a;a>0;a--){
for(c=0;c<a;c++){
printf("%c",yazi_iste[c]);
}
printf("\n");
}
}


Hiç yorum yok:

Yorum Gönder