Menu
Coddy logo textTech

הפלט הסופי

חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-C של Coddy. שיעור 24 מתוך 63.

challenge icon

אתגר

קל

השלם את תוכנית כלי הטקסט שלך על ידי שילוב כל התכונות שבנית בשיעורים הקודמים לפלט אחד מקיף. התוכנית שלך צריכה:

  1. לבקש מהמשתמש להזין משפט קצר באמצעות הדפסה של: Enter a sentence: (ללא ירידת שורה בסוף: השתמש ב-printf("Enter a sentence: "), ולא ב-printf("Enter a sentence: \n"))
  2. להכריז על מערך תווים בשם sentence ובו 200 איברים, כדי לאחסן את הקלט
  3. להשתמש ב-scanf עם מציין הפורמט %s כדי לקרוא מילה אחת מהמשתמש
  4. לאחסן את המילה המקורית במערך תווים נפרד לצורך הצגתה
  5. לחשב את מספר התווים הכולל באמצעות strlen()
  6. לספור את התנועות על ידי מעבר על כל תו ובדיקה אם הוא תואם לאחת התנועות (a, e, i, o, u), באותיות קטנות ובאותיות גדולות
  7. להמיר את המילה לאותיות גדולות באמצעות הפונקציה toupper() בתוך לולאה
  8. להציג את כל התוצאות בפורמט מסודר וברור, כאשר כל פריט מידע מופיע בשורה נפרדת

זכור לכלול את הכותרת <string.h> עבור פונקציות מחרוזת ואת הכותרת <ctype.h> עבור פונקציות להמרת תווים.

הפלט שלך צריך להציג את כל התוצאות בפורמט המדויק הבא:

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

חשוב: אסור שיופיע מעבר שורה אחרי ההנחיה Enter a sentence: . המילה Original: מופיעה באותה שורה מיד לאחר קריאת הקלט.

לדוגמה, אם הקלט הוא:

Hello

הפלט שלך צריך להיות:

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

האתגר המסכם הזה משלב את כל תכונות עיבוד הטקסט שפיתחת לאורך הפרויקט: טיפול בקלט, ספירת תווים באמצעות strlen(), ספירת תנועות באמצעות לולאות והוראות תנאי, והמרה לאותיות גדולות באמצעות toupper(). התוכנית צריכה להציג סיכום ברור ומסודר של תוצאות ניתוח הטקסט.

נסו בעצמכם

#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;
}

כל השיעורים ביחידה לוגיקה וזרימת תוכנית

תרגלו בעצמכם: קומפיילר C אונליין