![]() |
# 1 |
חבר וותיק
|
בעיה בתוכנית ב c
אהלן אנשים,
אני בדיוק עכשיו לומד פונ', ונתתי לעצמי כמה תרגילים לראות אם אני מצליח, אך נתקלתי בכמה בעיות. הנה התוכנית: קוד:
#include <stdio.h> #include <conio.h> int klot (int a,int b,int c); void main () { int a,b,c,d; a= klot (a,b,c); d=a+b+c; printf ("%d",d); } int klot (int a,int b,int c) { int a,b,c; scanf ("%d%d%d",&a,&b,&c); return (a,b,c); } אני צריך את זה דיי דחוף ![]() תודה רבה מראש לכל העוזרים (וגם המנסים), |
![]() |
![]() |
# 2 |
חבר וותיק
|
מסקירה מהירה על הקוד אני רואה שהפונקציה klot מחזירה a,b,c וזה לא אפשרי. או שאתה מחזיר את זה במערך או שאתה עושה את זה עם פויינטרים שלא נראה לי שלמדת..
זאת גם לא דוגמה טובה לפונקציות..תעשה משהו כמו add(a,b) ואז תתרגל את זה יותר טוב. כי במקרה שלך עדיף להוריד את הפונקציה ולקלוט הכל כבר בmain. |
![]() |
![]() |
# 3 |
חבר וותיק
|
אוקי אז מה שאתה אומר זה בעצם שזה בלתי אפשרי להחזיר יותר ממשתנה אחד? האפשרות היחידה זה בתוך בערך?
Last edited by ani; 10-05-08 at 17:41.. |
![]() |
![]() |
# 4 |
חבר וותיק
|
יש כל מיני דרכים עקיפות..אבל אני מעריך שלא למדת את זה..אז לא אי אפשר להחזיר יותר ממשתנה אחד.
כמו שאתה רואה גם שם הפונקציה שלך מתחילה בint ומה שזה אומר זה שזה מחזיר משתנה אחד מסוג integer.. אם זה היה נגיד struct מסויים או class מסויים היית יכול להחזיר כמה משתנים אבל בגלל שזה int אתה לא יכול. אבל כל מה שאמרתי בטח לא מובן לך..אז לסיכום תעשה מה שאמרתי בתגובה הראשונה. |
![]() |
![]() |
# 5 |
חבר וותיק
|
אוקי אחי תודה רבה
![]() |
![]() |
![]() |
חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים) | |
|
|