עבור לתוכן

מציאת תת מחרוזת במחרוזת בC

Featured Replies

פורסם

היי,

איך אני יכולה למצוא תת מחרוזת ממחרוזת שהמשתמש מכניס בלי להשתמש בפונקציות?

פורסם

אפשר להתיחס למחרוזת כמערך (שם משתנה והוספת סוגריים מרובעים במיקום כלשהו [index]

המשתנה של מחרוזת הוא בעצם מצביע לכתובת בזיכרון של תחילת המחרוזת.

המחרוזת תמיד תסתיים ב-תו מציין, כלומר התו האחרון במחרוזת יהיה 0.

פורסם
  • מחבר
ציטוט של Jabberwock

אפשר להתיחס למחרוזת כמערך (שם משתנה והוספת סוגריים מרובעים במיקום כלשהו [index]

המשתנה של מחרוזת הוא בעצם מצביע לכתובת בזיכרון של תחילת המחרוזת.

המחרוזת תמיד תסתיים ב-תו מציין, כלומר התו האחרון במחרוזת יהיה 0.

היי,

עדיין לא למדתי מצביעים. יש דרך לעשות את זה בלי מצביעים?

פורסם
ציטוט של Daniel22

יש דרך לעשות את זה בלי מצביעים?

הסברתי מעט מעבר.

כמו שאמרתי הדרך לפיתרון היא להתיחס למחרוזת כמערך ולהשתמש בלולאה.

פורסם
  • מחבר
ציטוט של Jabberwock

הסברתי מעט מעבר.

כמו שאמרתי הדרך לפיתרון היא להתיחס למחרוזת כמערך ולהשתמש בלולאה.

את זה אני מבינה אני פשוט לא מצליחה לממש את זה. איך הלולאה אמורה להיראות?

פורסם

נתחיל בלפרק את הבעיה לחלקים:

אם את מבצעת קריאה על ידי scanf אז המחרוזת שלך תסתיים בתו n\

מפה את בעצם צריכה לרוץ על המחרוזת עד שאת נתקלת בתו n\ ואז לבדוק תת מחרוזת וכמובן לבדוק שלא חורגים מעבר לגודל וכדומה הינה דוגמא היא רחוקה מלהיות שלמה זה רק בשביל לתת לך את הכיוון 

int main ()

{

int i =0;

char str[256] // אני מניח שלא למדת על מצביעים וזיכרון דינאמי

char subStr[256]

printf ("please enter the string\n");

scanf ("%s",str);

 

printf ("please enter the sub-string to search\n");

scanf ("%s",subStr);

 

while(str !='\n')

{

    if(str == subStr)

    {

        

    }

}

 

return 1;

}

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים