Menu
Coddy logo textTech

Son Çıktı

Coddy'nin C Journey'sinin Mantık & Akış bölümünün bir parçası. Ders 24 / 63.

challenge icon

Görev

Kolay

Önceki derslerde oluşturduğun tüm özellikleri tek ve kapsamlı bir çıktıda birleştirerek metin yardımcı programını tamamla. Programın şunları yapmalıdır:

  1. Enter a sentence: yazdırarak kullanıcıdan kısa bir cümle girmesini istemelidir (sonunda yeni satır olmamalıdır: printf("Enter a sentence: ") kullanılmalı, printf("Enter a sentence: \n") kullanılmamalıdır)
  2. Girdiyi depolamak için 200 öğeli sentence adlı bir karakter dizisi bildirmelidir
  3. Kullanıcıdan tek bir kelime okumak için %s biçim belirteciyle birlikte scanf kullanmalıdır
  4. Görüntüleme amacıyla özgün kelimeyi ayrı bir karakter dizisinde depolamalıdır
  5. strlen() kullanarak toplam karakter sayısını hesaplamalıdır
  6. Her karakterin üzerinden geçerek hem küçük hem de büyük harfli sesli harflerden (a, e, i, o, u) herhangi biriyle eşleşip eşleşmediğini kontrol ederek sesli harfleri saymalıdır
  7. Bir döngüde toupper() işlevini kullanarak kelimeyi büyük harfe dönüştürmelidir
  8. Her bilgi parçasını ayrı bir satırda göstererek tüm sonuçları temiz ve düzenli bir biçimde görüntülemelidir

Dizge işlevleri için <string.h> başlığını ve karakter dönüştürme işlevleri için <ctype.h> başlığını eklemeyi unutma.

Çıktın tüm sonuçları aşağıdaki tam biçimde görüntülemelidir:

Enter a sentence: Original: [word]
Characters: [count]
Vowels: [count]
Uppercase: [WORD]

Önemli: Enter a sentence: isteminin ardından yeni satır gelmemelidir. Original: kelimesi, girdi okunduktan hemen sonra aynı satırda görünür.

Örneğin girdi şu şekildeyse:

Hello

Çıktın şu şekilde olmalıdır:

Enter a sentence: Original: Hello
Characters: 5
Vowels: 2
Uppercase: HELLO

Bu son görev, proje boyunca geliştirdiğin tüm metin işleme özelliklerini bir araya getirir: girdi işleme, strlen() ile karakter sayma, döngüler ve koşullu ifadelerle sesli harf sayma ve toupper() ile büyük harfe dönüştürme. Program, metin analizi sonuçlarının temiz ve düzenli bir özetini sunmalıdır.

Kendin dene

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

int main() {
    char sentence[200];
    
    printf("Enter a sentence: ");
    scanf("%s", sentence);
    
    printf("You entered: %s\n", sentence);
    
    int length = strlen(sentence);
    printf("Character count: %d\n", length);
    printf("Length: %d\n", length);
    
    int vowel_count = 0;
    for (int i = 0; i < length; 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);
    
    printf("Uppercase: ");
    for (int i = 0; i < length; i++) {
        printf("%c", toupper(sentence[i]));
    }
    printf("\n");
    
    return 0;
}

Mantık & Akış bölümündeki tüm dersler

Kendi başına pratik yap: Online C derleyicisi