Projeye Genel Bakış
Coddy'nin C Journey'sinin Logic & Flow bölümünün bir parçası — ders 20 / 63.
Görev
KolayÖnümüzdeki birkaç ders boyunca, dize ve karakter manipülasyonunun gerçek dünya uygulamalarını gösteren basit bir metin aracı oluşturacaksınız.
Kullanıcı girişini okuyup saklayarak bir metin aracının temelini oluşturan bir C programı yazın. Programınız şunları yapmalıdır:
- Kullanıcıdan kısa bir cümle girmesini istemek için şunu yazdırın:
Enter a sentence: - Girişi saklamak için 200 elemanlı
sentenceadında bir karakter dizisi (array) tanımlayın - Kullanıcıdan tek bir kelime okumak için
%sformat belirleyicisi ilescanfkullanın - Saklanan kelimeyi şu formatta yazdırın:
You entered: [word] - Karakter dizisinin düzgün bir şekilde null-terminated (boş karakterle sonlandırılmış) olduğunu, saklanan kelimenin uzunluğunu
strlen()kullanarak şu formatta yazdırarak gösterin:Length: [length]
strlen() fonksiyonunu kullanmak için <string.h> başlık dosyasını dahil etmeyi unutmayın.
Çıktınız sonuçları aşağıdaki formatta görüntülemelidir:
Enter a sentence:
You entered: [word]
Length: [length]Örneğin, giriş şu şekildeyse:
HelloÇıktınız şöyle olmalıdır:
Enter a sentence:
You entered: Hello
Length: 5Önemli: İstemi (prompt) satırı, iki nokta üst üste işaretinden hemen sonra bir yeni satır karakteri ile bitmelidir — \n karakterinden önce fazladan bir boşluk eklemeyin. Tam olarak gösterildiği gibi printf("Enter a sentence:\n"); kullanın.
Bu meydan okuma, gelecek derslerde ekleyeceğiniz metin aracı özellikleri için temel oluşturacak temel giriş ve saklama mekanizmasını kurar. Karakter dizisi tanımlama, scanf ile dize girişi ve strlen() kullanarak temel dize uzunluğu hesaplama konusundaki anlayışınızı test eder.
Kendin dene
#include <stdio.h>
#include <string.h>
int main() {
// TODO: Kodunuzu buraya yazın
// 1. İstemi mesajını yazdırın
// 2. 200 elemanlı 'sentence' adında bir karakter dizisi tanımlayın
// 3. %s format belirleyicisi ile scanf kullanarak girişi okuyun
// 4. Girilen kelimeyi ve uzunluğunu yazdırın
return 0;
}Logic & Flow bölümündeki tüm dersler
1Pointer Temelleri
Pointer Nedir?Pointer TanımlamaAdres Operatörü (&)Dereference Operatörü (*)NULL Pointer'larÖzet: Pointer Temelleri4Proje: Basit Metin Aracı
Projeye Genel BakışKarakter Sayma2İşaretçiler ve Diziler
İşaretçi Olarak Dizi İsimleriDizi Elemanları - İşaretçilerİşaretçi Aritmetiğiİşaretçilerin KarşılaştırılmasıÖzet: İşaretçi ile Dizi Gezinme5İşaretçiler ve Fonksiyonlar
Değer ile GeçmeFonksiyonlara İşaretçi Göndermeİşaretçiler ile Değişkenleri DeğiştirmeKlasik Bir Örnek: SwapFonksiyonlara Dizi GöndermeÖzet: Fonksiyon İşaretçi Argümanları8Yapılar ve İşaretçiler
Yapılara İşaretçilerOk Operatörü (->)Yapıları Değer ile AktarmaYapı İşaretçilerini AktarmaYapıların Dinamik TahsisiÖzet: Yapıyı Değiştirme - Ptr11Son Tekrar Görevleri
Tekrar: Dinamik String BirleştirmeTekrar: Struct DizisiTekrar: Kelime Frekans Sayacı3Karakter Dizileri ve Stringler
char Dizisi Olarak StringlerNull Sonlandırıcıscanf ile String Girişistrlen() Kullanımıstrcpy() Kullanımıstrcat() Kullanımıstrcmp() KullanımıÖzet: Temel String Fonksiyonları