שאלה בקשר לתוכנית שכתבתי בC - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

שאלה בקשר לתוכנית שכתבתי בC


D-Bang

Recommended Posts

אני צריך לכתוב תוכנית ב C שקולטת מחרוזת מסויימת והתוכנית צריכה להחסיר 1 מהתו הראשון של המילה הראשונה, 2 מהתו השני וכו'...

עד שזה מגיע לרווח, ואז אותו דבר עבור המילה השנייה וכך הלאה...

ובסוף צריך להדפיס את המחרוזת החדשה שהתקבלה.

אני מבין שצריך לעבוד עם הקוד ASCII של התווים אבל אני לא ממש יודע איך לעבוד עם הפקודות שקשורות לזה.

זו הלולאה שאני כתבתי, הקומפילציה עוברת בסדר אבל בהרצה הוא נתקע על ההתחלה (אני יכול לחזור לתוכנית רק בעזרת CTRL BREAK)

מקווה שתוכלו לעזור לי: ???

char stg[50]="bla rababa magula"

while (i<50)

{

k=1;

while (stg!=' ')

{

temp=(int)(stg)-k;

stg=(char)(temp);

k++;

i++;

}

}

קישור לתוכן
שתף באתרים אחרים

char stg[50]="bla rababa magula"

for(i=0,k=1;stg != '\0';i++,k++)

{

if(stg != ' ') { k=0; continue; }

stg=stg-k;

}

בעיקרון הטעות העיקרית שלך היא שאם הגעת לרווח אתה לא מעלה את ה-i ונתקע לנצח.

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

אבל ככה זה נראה הרבה יותר יפה

קישור לתוכן
שתף באתרים אחרים

ארכיון

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

×
  • צור חדש...