Merhaba arkadaşlar, bu yazımızda girilen bir yazı (string) ifadesinde bulunan ünlü/ünsüz harflerin, rakamların ve boşlukların sayısını bulmaya yarayan kodları paylaşacağım. Mantığı çok basit olan bu programda yine girilen ifadeyi döngüye sokarak, döngünün koşulunu “\0” karakterini bulma yapacağız. Bu karakteri bulana kadar, eğer ünlü harf var ise “v” değişkenini, ünsüz harf var ise “c” değişkenini, rakam var ise “d” değişkenini ve son olarak boşluk var ise “s” değişkenini artıracağız. Tabii bunu if/else kullanarak çok basit bir şekilde gerçekleştirebiliriz. İsterseniz kodumuzu görelim;
#include <stdio.h>
#include <stdlib.h>
int main()
{
char line[150];
int i,v,c,ch,d,s,o;
o = v = c = ch = d = s = 0;
printf("Bir satir ifade giriniz: ");
gets(line);
for(i=0; line[i]!='\0'; ++i)
{
if(line[i]=='a' || line[i]=='e' || line[i]=='i' || line[i]=='o' || line[i]=='u' || line[i]=='A' || line[i]=='E' || line[i]=='I' || line[i]=='O' || line[i]=='U')
++v;
else if((line[i]>='a'&& line[i]<='z') || (line[i]>='A'&& line[i]<='Z'))
++c;
else if(line[i]>='0'&& line[i]<='9')
++d;
else if (line[i]==' ')
++s;
}
printf("Unlu harfler: %d", v);
printf("\nUnsuz harfler: %d", c);
printf("\nRakam: %d", d);
printf("\nBosluk: %d", s);
return 0;
}
Çıktı
Bir satir ifade giriniz : Bu bir 12345 yazi ifadesidir
Unlu harfler: 9
Unsuz harfler: 10
Rakam: 5
Bosluk: 4