【問題】C++的函數(急)


Recommended Posts

#include<stdio.h>
#include<math.h>
static int a=0,b=0,c=0;
static int user;
static int num1,num2;






int add(int x,int y) // Implementation
{
c=num1+num2;
return (c);
}


int minus(int x,int y)
{
c=num1-num2;
return(c);
}


int multiply(int x,int y)
{
c=num1*num2;
return(c);
}


int divide(int x,int y)
{
c=num1/num2;
return(c);
}

main()
{


printf("請輸入兩個數值:");
scanf("%d",&num1);
scanf("%d",&num2);

printf("請先選擇:(+請按1,-請按2,*請按3,/請按4,次方請按5)");
scanf("%d",&user);
switch(user)
{
case 1:
[B] a=add(int x,int y);[/B](他說粗體的地方錯了)
break;
case 2:
[B] a=minus(int,int);[/B]
break;
case 3:
[B] a=multiply(int,int);[/B]
break;
case 4:
[B] a=divide(int,int);[/B]
break;
case 5:
[B] a=pow(int,int);[/B]
break;

}

printf("%d",a);

system("pause");
}

我想了很久還是不知道錯哪裡。= ='

跟函數不熟。= ="

鏈接文章
分享到其他網站

呃 建議你再把函數的部分複習一遍

首先有幾件事要弄清楚

int add(int x, int y)

{

...

}

以上叫函數的定義,也就是函數內容的實做

如果只有以下這樣:

int add(int x, int y); or int add(int, int);

這是函數的宣告,告訴編譯器函數的形式

要使用函數時,就和數學裡函數的用法一樣

如果那個函數有參數(也就是要你傳值給它),像這邊的int add(int, int)

那你就要傳兩個整數給他相加,以你的code裡是num1和num2

因此用法如下:

a=add(num1, num2);

以上簡短說明,詳細看書比較快

鏈接文章
分享到其他網站
呃 建議你再把函數的部分複習一遍

首先有幾件事要弄清楚

int add(int x, int y)

{

...

}

以上叫函數的定義,也就是函數內容的實做

如果只有以下這樣:

int add(int x, int y); or int add(int, int);

這是函數的宣告,告訴編譯器函數的形式

要使用函數時,就和數學裡函數的用法一樣

如果那個函數有參數(也就是要你傳值給它),像這邊的int add(int, int)

那你就要傳兩個整數給他相加,以你的code裡是num1和num2

因此用法如下:

a=add(num1, num2);

以上簡短說明,詳細看書比較快

謝謝。

其實我是想了好久才問的。

因為我一直在這邊打轉,想說用問的會比較快。

不過總算有人回了^______^,等好久。

鏈接文章
分享到其他網站

請登入後來留意見

在登入之後,您才能留意見



立即登入