שפת C/מחרוזות/תרגילים

מתוך ויקיספר
קפיצה אל: ניווט, חיפוש

קליטת שם והדפסת הודעת ברכה אישית[עריכה]

כתבו תוכנית שמבקשת את שם המשתמש, ומדפיסה לו הודעת שלום. הניחו ששם המשתמש קצר מ-10 תווים.


שרשור שלוש מחרוזות[עריכה]

כתבו תוכנית שקולטת מהמשתמש 3 מחרוזות, משרשרת את שלושתן למחרוזת אחת ומציגה אותה על המסך. הניחו שכל אחת משלוש המחרוזות הנקלטות היא בגודל 15 לכל היותר. שימו לב לא לדרוס זיכרון!



היפוך מחרוזת[עריכה]

כתבו תוכנית שמקבלת מחרוזת מהמשתמש, ויוצרת מחרוזת חדשה, שמכילה את המחרוזת הראשונה מהסוף להתחלה. כלומר, אם המשתמש הקליד "Shalom" המחרוזת השנייה תהיה "molahS". הניחו שאורך המחרוזות הנו לכל היותר 15.

זכרו שמחרוזת היא פשוט מערך של תווים, ואפשר לגשת לכל תו בה ע"י [str[i כאשר str שם המחרוזת. זכרו גם לדאוג שיהיה תו סיום מחרוזת '0\' במחרוזת החדשה.



היפוך מחרוזת ללא מחרוזת עזר[עריכה]

כתבו תוכנית דומה לקודמת: היא קולטת מחרוזת מהמשתמש, ואז הופכת אותה, אך הפעם בלי להשתמש במחרוזת נוספת.
רמז: השתמשו בשני אינדקסים בלולאה. אחד מהם יתחיל מהתו הראשון במחרוזת, ואחד מהתו האחרון. (נזכור שבתא האחרון יש '0\').



מחיקת רווחים ממחרוזת קלט[עריכה]

Edit-undo.svg

שקול לדלג על נושא זה

תרגיל זה עושה שימוש בפונקציית gets, שלא נלמדה במדריך זה. אם אינך מכיר את השימוש בה, מומלץ לדלג על תרגיל זה.



כתבו תוכנית שקולטת מחרוזת מהמשתמש עם gets, ומוחקת ממנה את כל הרווחים. הניחו שאורך המחרוזות הנו לכל היותר 15 (לא לשכוח לדאוג לתו 0 במקום הנכון).



פונקציה דומה ל-strlen[עריכה]

כתוב פונקציה בשם strlen_without_h המקבלת מחרוזת, ומדפיסה את מספר התווים בה שאינם האות 'h'.



פונקציה דומה ל-strcpy[עריכה]

כתוב פונקציה בשם strcpy_without_h המעתיקה מחרוזת אחת לשניה, למעט כל מופע של האות 'h'.