נושאים פעיליםנושאים פעילים  הצגת רשימה של חברי הפורוםרשימת משתמשים  חיפוש בפורוםחיפוש  עזרהעזרה
  הרשמההרשמה  התחברותהתחברות RSS עדכונים
תיכנות
RSS UnderWarrior Forums : RSS תיכנות
נושא

נושא: עזרה בC - מספר שאלות

שליחת תגובהשליחת נושא חדש
כותב
הודעה << נושא קודם | נושא הבא >>
Werewolf
משתמש מתחיל
משתמש מתחיל
סמל אישי

הצטרף / הצטרפה: 25 April 2006
מדינה: Israel
משתמש: מנותק/ת
הודעות: 21
נשלח בתאריך: 02 May 2006 בשעה 13:58 | IP רשוּם
ציטוט Werewolf

1. זה באג שמעצבן אותי כבר דיי הרבה זמן. נניח שאני בונה תוכנית שמבקשת מהמשתמש 3 מספרים ואז מציגה את הסכום שלהם. הבאג הזה קורה לי גם בתוכניות אחרות, אבל נניח שבניתי את התוכנה ועכשיו כשאני מנסה להכניס ערך ראשון, לוחץ אנטר, ערך שני, לוחץ אנטר וכנ"ל לגבי הקלט השלישי - שום דבר לא קורה. רק כשאני מכניס קלט רביעי קורה משהו. אבל לא חיובי - הקומפיילר נסגר. ואני באמת מאמין שלא יכולה להיות לי טעות בקוד כגון:

קוד:
#include <stdio.h>

int main()

int a, b, c;
printf("Please enter three numbers: ");
scanf("%d%d%d\n", &a, &b, &c);

int d = a + b + c;
printf("%d + %d + %d = %d", a, b, c, d);
return 0;

}

2. נניח שהבאג הראשון לא מתרחש, והתוכנית עובדת בסדר, הפלט של התוכנית מוצג לחצי שניה והתוכנית נסגרת. כיצד אפשר לתקן זאת?

3. כיצד אני יכול להכניס גרפיקה בסיסית, כלומר שהתוכנית לא תהיה בדוס? כפתורים, חלונות כלשהם, תיבות טקסט, כפתורי רדיו, כפתורי סימון, אולי אפילו טאבים...?

אודה מאוד אם תוכלו לענות לי על השאלות ולהציג לי את קוד הפתרון לכל בעיה.



__________________
Life's a game. Learn how to play, and then learn how to cheat.
חזרה לתחילת העמוד הצג את כרטיס החבר של Werewolf חפש הודעות אחרות של Werewolf
 
efrat
אורח
אורח


הצטרף / הצטרפה: 01 October 2003
משתמש: אונליין
הודעות: 12647
נשלח בתאריך: 02 May 2006 בשעה 15:01 | IP רשוּם
ציטוט efrat

את הבעיה השניה אפשר לפתור ע"י הפקודה ;()getch, היא מחכה עד שהמשתמש ילחץ על מקש כלשהו ואז יוצאת ממסך ההרצה.

חזרה לתחילת העמוד הצג את כרטיס החבר של efrat חפש הודעות אחרות של efrat בקר בדף הבית של efrat
 
Fate
פורומיסט על
פורומיסט על
סמל אישי

הצטרף / הצטרפה: 25 October 2005
משתמש: מנותק/ת
הודעות: 571
נשלח בתאריך: 02 May 2006 בשעה 15:04 | IP רשוּם
ציטוט Fate

3. זה תצטרך לבחור שיטה לתיכנות GUI לwindows...
שזה כולל .NET, MFC, win32api, wx...

תחפש באיטרנט חומר...
חזרה לתחילת העמוד הצג את כרטיס החבר של Fate חפש הודעות אחרות של Fate
 
אלצ'קו
אחראי פורומים
אחראי פורומים
סמל אישי
ג2ר פ33תי

הצטרף / הצטרפה: 20 January 2006
משתמש: מנותק/ת
הודעות: 609
נשלח בתאריך: 04 May 2006 בשעה 02:50 | IP רשוּם
ציטוט אלצ'קו

תשובות:
1. זה בגלל ירידת השורה המיותרת שהוספת ל-scanf. נסה את הקוד הבא:
קוד:
#include <stdio.h>

int main(void)
{
    int a, b, c, d;

    printf("Please enter three numbers:\n");
    scanf("%d%d%d", &a, &b, &c);
   
    d = a + b + c;

    printf("%d + %d + %d = %d\n", a, b, c, d);
   
    return 0;
}

שים לב שב-scanf אין את ירידת השורה שהייתה אצלך.


2. תגדיר ב-IDE שלך לא לסגור את התכנית ישר אחרי הסיום.


3. גרפיקה בסיסית אפשר גם בדוס. אם אתה רוצה לכתוב יישום ווינדוס זה כבר עניין אחר לגמרי. הם נכתבים בצורה שונה לחלוטין.
חזרה לתחילת העמוד הצג את כרטיס החבר של אלצ'קו חפש הודעות אחרות של אלצ'קו
 
amirmattar
משתמש מתחיל
משתמש מתחיל


הצטרף / הצטרפה: 02 May 2006
מדינה: Israel
משתמש: מנותק/ת
הודעות: 5
נשלח בתאריך: 04 May 2006 בשעה 20:57 | IP רשוּם
ציטוט amirmattar

כדי שתראה את הפלט של התוכנית ..אם אתה משתמש בתוכנית של TurboC אז תלחץ אחרי שאתה עושה run וכו' על alt+f5 ..

חזרה לתחילת העמוד הצג את כרטיס החבר של amirmattar חפש הודעות אחרות של amirmattar בקר בדף הבית של amirmattar
 

אם ברצונך להגיב לנושא זה עליך קודם להתחבר
אם אינך רשום/ה כבר עליך להרשם

  שליחת תגובהשליחת נושא חדש
גרסת הדפסה גרסת הדפסה

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