Büyük Harfe Dönüştürme
Coddy'nin C Journey'sinin Logic & Flow bölümünün bir parçası — ders 23 / 63.
Görev
KolayÖnceki dersteki metin yardımcı programınızı büyük harf dönüştürme işlevi ekleyerek genişletin. 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:(sonunda yeni satır karakteri olmadan) - Girdiyi saklamak için 200 elemanlı
sentenceadında bir karakter dizisi (character 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] - Kelimedeki toplam karakter sayısını hesaplamak için
strlen()kullanın - Karakter sayısını şu formatta yazdırın:
Character count: [count] - Uzunluğu
strlen()kullanarak şu formatta yazdırın:Length: [length] - Sesli harfleri saymak için bir döngü kullanarak kelimedeki her karakteri inceleyin
- Her karakter için, hem küçük hem de büyük harf olarak sesli harf (a, e, i, o, u) olup olmadığını kontrol edin
- Bulunan sesli harflerin sayısını tutun
- Sesli harf sayısını şu formatta yazdırın:
Vowel count: [count] Uppercase:yazdırın ve ardından kelimedeki her karakteritoupper()fonksiyonunu kullanarak büyük harfe dönüştürüp yazdırmak için bir döngü kullanın
strlen() fonksiyonunu kullanmak için <string.h> başlık dosyasını ve toupper() fonksiyonunu kullanmak için <ctype.h> başlık dosyasını dahil etmeyi unutmayın.
toupper() Hakkında:
<ctype.h> kütüphanesindeki toupper() fonksiyonu, tek bir karakteri büyük harf karşılığına dönüştürür. Karakter zaten büyük harfse veya bir harf değilse, değiştirilmeden döndürülür.
Örnek: toupper('a'), 'A' değerini döndürür ve toupper('Z'), 'Z' değerini döndürür.
Her seferinde bir karakteri dönüştürmek için bunu bir döngü içinde kullanabilirsiniz: printf("%c", toupper(sentence[i]));
Önemli: Enter a sentence: isteminden sonra yeni bir satır gelmemelidir. \n olmadan printf("Enter a sentence: "); kullanın.
Çıktınız sonuçları aşağıdaki formatta görüntülemelidir:
Enter a sentence: You entered: [word]
Character count: [count]
Length: [length]
Vowel count: [count]
Uppercase: [WORD]Örneğin, girdi şu ise:
ProgrammingÇıktınız şöyle olmalıdır:
Enter a sentence: You entered: Programming
Character count: 11
Length: 11
Vowel count: 3
Uppercase: PROGRAMMINGBu meydan okuma, <ctype.h> kütüphanesindeki toupper() fonksiyonunu kullanarak büyük harf dönüştürme işlevi ekleyerek önceki dersin üzerine inşa edilmiştir. Dizedeki her karakteri incelemek ve büyük harfe dönüştürmek için bir döngü kullanmanız, ardından dönüştürülmüş sonucu yazdırmanız gerekecektir.
Kendin dene
#include <stdio.h>
#include <string.h>
int main() {
printf("Enter a sentence: \n");
char sentence[200];
scanf("%s", sentence);
printf("You entered: %s\n", sentence);
int char_count = strlen(sentence);
printf("Character count: %d\n", char_count);
int length = strlen(sentence);
printf("Length: %d\n", length);
int vowel_count = 0;
for (int i = 0; i < strlen(sentence); i++) {
char c = sentence[i];
if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u' ||
c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U') {
vowel_count++;
}
}
printf("Vowel count: %d\n", vowel_count);
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ı