שאלה בשפת C

immortal lady

New member
שאלה בשפת C

איך אני כותבת בתוכנית שאחרי קליטה של 10 מספרים התוכנית תרד שורה ובלי \n או \t? התרגיל הוא: כתוב תוכנית להדפסת המספרים מ-1 עד 100 בסדר יורד,הוסף שיפור לתוכנית:כל עשרה מספרים יודפסו בשורה נפרדת. # include <stdio.h> # include <conio.h> void main () { int mis; for (mis=100;mis>0;mis--) printf ("%d\t",mis); getch(); } זאת התוכנית שרשמתי בלי השיפור... יש לכם רעיון?
 

vinney

Well-known member
פורום שפות תכנות מתאים יותר לשאלה הזאת

אבל התשובה היא כמובן kbhit.
 

vinney

Well-known member
הא, לא קראתי עד הסוף את השאלה

את כותבת, לא קרואת
למה את לא רוצה להשתמש בn\?
 

vinney

Well-known member
אז אפשר להניח משהו על הטרמינל

למשל, שבחלון הדוס יש רק 80 תוים בשורה (לדוגמא). לא עולה לי שום רעיון אחר בראש כרגע. (אגב, כשאת אומרת שאת לא רוצה להשתמש בn\, האם זה כולל גם לא להדפיס c% של 10?)
 

vinney

Well-known member
think outside the bun

דהיינו חשבי מחוץ לקופסא. מה זה "n\"? זה בסך הכל קיצור לתו במקום ה10 בASCII (או רצף של 10 ו13). איך מדפיסים תו כלשהו בASCII עם printf? עם פקודת c% במחרוזת הפירמוט, וכפרמטר מעבירים את המספר הסידורי של תו בטבלה. על כן שתי הפקודות שקולות (בהנחה וn\ הוא רק 10):
printf ("%c", 10( printf ("\n")​
 

vinney

Well-known member
לא

כי זה שיעורי הבית שלך. אבל אני מניח שמינימום של cut & paste את מסוגלת לעשות גם בלי עזרתי
 

immortal lady

New member
תודה על העזרה....

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