Herkese merhabalar, yine bir C programlama dersiyle karşınızdayım.Bu dersimizde sizlere .txt dosyası içerisinde yazılı olan metinin tamamını büyük harfe çeviren C programlama kodlarını paylaşacağım.
Öncelikle bu program normal hayatımızda da işe yarayabilir.Mesela diyelim bir metin var tamamını büyük harfe çevirmemiz gerekiyor haliyle bu program sayesinde hepsini büyük harfe çevirebilirsiniz.Şimdi hemen kullanımına geçelim.İlk önce kodları paylaşayım.Program kodları bu şekilde olacaktır.Açıklamaları yanlarında yazılmıştır.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
#include<stdio.h> //Kütüphanelerimizi oluşturduk. #include<stdlib.h> main() // Ana fonksiyonumuzu "int main()" olarak oluşturmadık.Çünkü char şeklinde olacak o yüzden normal "main()" fonksiyonu yapıyoruz. { FILE *fp; // Burada programımız .txt dosyasına bağlanacağı için bu kodu yazıyoruz. char c; int k,i; fp=fopen("buyutucu.txt","r+"); // Burada ise program dosyamıza bağlanıyor.Ben buyutucu.txt adında klasör oluşturdum o yüzden onu yazdım.Siz dosyanın adını istediğiniz gibi değiştirebilirsiniz. if(fp==NULL){printf("dosya hatasi"); exit(1);} // Eğer içi boşsa programımız hata verecektir. fseek(fp,0L,SEEK_END); k=ftell(fp); for(i=0;i<=k;i++) // Döngümüzü başlatıyoruz.Burada while da kullanılabilir size kalmış tamamen. { fseek(fp,i,SEEK_SET); c=fgetc(fp); if( c>='a' && c<='z' ) { fseek(fp,i,SEEK_SET); fputc(c-32,fp); // Asıl kodumuz burada yer alıyor.Eğer harf küçükse bu kod sayesinde büyütmüş oluyoruz. } } fclose(fp); // Burada dosyamızı kapatıyoruz. system("pause"); // Programımızın sonuna geliyoruz. return 0; } |
Kodlarını oluşturduktan sonra kodlarımızın bulunduğu dosyanın içerisine .txt dosyası oluşturmamız gerekiyor.Çünkü büyük harfe çevireceğimiz metini bu metin belgesine kopyalayacağız.Sonrasında programı çalıştıracağız ve harflerimizin hepsi büyük olmuş olacak.Dediğim gibi metin belgesini yani .txt dosyasını kodları yazdığınız klasörün içine almayı unutmayınız.
Şimdi gelelim ekran görüntüsü paylaşmaya.Ben dosyanın içerisine “mustafa şirin” yazdım bakalım harflerimiz büyüyecek mi?
Öncelikle metin belgemize küçük harflerle kelimelerimizi yazıyoruz.

Sonrasında programımızı açıyoruz ve çalıştırıyoruz.Çalıştırdıktan sonra karşımıza aşağıdaki gibi bir ekran gelecek sonrasında herhangi bir tuşa basıyoruz.

En sonunda ise metin belgemize giriyoruz.Böylece yazılarımızın büyük harfe dönüştüğünü görüyoruz.Programda Türkçe karakterlerin büyümediğini görebiliyoruz.Onu tam olarak çözemedim printf komutunu kullanırken locale.h kütüphanesi sayesinde Türkçe karakterli şekilde yapabiliyoruz lakin metin belgesinde olmuyor.Yinede araştıracağım bulduğumda konuya eklerim.

Program bu kadardır arkadaşlar.Umarım faydalı olur.Herkese iyi çalışmalar dilerim…
Bu Yazıya Tepkin Ne Oldu ?



Paylaşım için teşekkürler. Peki dosyadaki büyük harfleri küçük harfe nasıl çevirebiliriz?
Efendim büyük harfleri küçüğe çevirmek için kodlardaki
if( c>=’a’ && c<='z' ) { fseek(fp,i,SEEK_SET); fputc(c-32,fp); bu kısmı aşağıdaki gibi yapıyoruz. if( c>=’A’ && c<='Z' ) { fseek(fp,i,SEEK_SET); fputc(c+32,fp); İyi çalışmalar dilerim.
hazır fonksiyon yardımıyla yaptıktan sonra ne anlamı var önemli olan algoritma mantığını kavramak.
Merhabalar efendim hazır fonksiyon derken fopen ve fseek gibi yapılar zaten C programlama dili içerisinde mevcut.Yani bunu dışarıdan bir veriyle çekmiyoruz.Ayrıca kodların anlatımını yanlarına yaptım.Siz zaten kodlara baştan sona baktığınızda algoritmasını da kavramış olacaksınız.Direkt olarak kopyala yapıştır yaparsanız kodların bir anlamı kalmaz.Bu yüzden nasıl yapıldığını iyi öğrenmek gerekiyor.İyi çalışmalar dilerim.
Merhaba,
Dosya adını kod dosyasında da değilde programı çalıştırınca girmek istiyorum. Programı exe haline getirip kullanacağım, çalıştırınca bana dosyanın adını sormalı girdiğim dosya ismini alıp ona ulaşmalı. Nasıl yapabilirim ?
Merhabalar hocam maalesef o şekilde yapımını bilmiyorum fakat sanırım “fscanf();” ve “fprintf();” bu ve bunun türevi kodlar kullanılarak yapılıyor. İnternetten araştırma yapın illaki paylaşım yapan olmuştur. Mesela “bilgisayarkavramlari.sadievrenseker.com/2008/10/22/c-ile-dosya-islemleri” buradaki sitede detaylı anlatılmış bakabilirsiniz. Bende ilerde bu konu hakkında paylaşım yapabilirim. Teşekkürler iyi çalışmalar dilerim.