English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
所有分類

簡單的程式...卻搞不懂,幫忙解答一下哪邊出錯?#includevoid main(){ int a,b,c; scanf("%d,%d",&b,&c); a=re(b,c); printf("%d\\n",a)} re(int b,int c) { int y; y=b*c; return(y); }

2006-01-24 12:58:16 · 2 個解答 · 發問者 ? 5 in 電腦與網際網路 程式設計

原來我少一個;
第九行前面沒有打int 程式還可以執行說?!
為什麼我輸入1 2
結果卻是3129?

2006-01-24 13:11:01 · update #1

奕奕大大,你的程式你確定跑的動嗎?沒加;耶!

2006-01-24 16:38:08 · update #2

我題目沒有問兩次喔!因為一個是問程式沒辦法RUN
一個是可以RUN但是出現結果錯誤。

2006-01-26 19:47:50 · update #3

2 個解答

函數包含3個部分
1. 函 數 的 定 義 (Function Definition)
2. 呼 叫 函 數 (Function Call)
3. 函 數 原 形 宣 告 (Function Prototype)

如果你要將 函 數 原 形 宣 告 寫在最後面,那麼 函 數 的 定 義 先寫在前面,而且使用函數時,要掉一函數是傳值還是傳址(int、void),
應該是這樣↓

#include
int re(int b,int c)
void main()
{
int a,b,c;
scanf("%d,%d",&b,&c);
a=re(b,c);
printf("%d\n",a)
}
int re(int b,int c)
{
int y;
y=b*c;
return(y);
}

或是

#include
int re(int b,int c)
{
int y;
y=b*c;
return(y);
}
void main()
{
int a,b,c;
scanf("%d,%d",&b,&c);
a=re(b,c);
printf("%d\n",a)
}

2006-01-24 20:47:54 補充:
http://imil.au.edu.tw/~hsichcl/TurboC/C_Unit7.htm我剛學時,常看的網站

2006-01-24 15:46:33 · answer #1 · answered by ? 2 · 0 0

不是這樣 re(int b,int c)

第九行要像我這樣寫
int re(int b,int c)
要把傳回變數的型態定義清楚

2006-01-24 23:10:41 補充:
int re(int b,int c)如果不把變數型態定義清楚會變成void也就是不傳回值吧?你確定可以run?

2006-01-24 23:11:09 補充:
int re(int b,int c)如果不把變數型態定義清楚會變成void也就是不傳回值吧?你確定可以run?

2006-01-24 13:01:05 · answer #2 · answered by 傑斯 1 · 0 0

fedest.com, questions and answers