瀏覽量:0次
#include
void meu()
{
printf("~~~~~~~~~~~~\n");
printf("~~1:Add 2:jian~~~\n");
printf("~~3:cheng 4:chu~~\n");
printf("~~~0:exit~~~~~~\n");
}
int Add(int x,int y)
{
return x y;
}
int jian(int x,int y)
{
return x-y;
}
int cheng(int x,int y)
{
return x*y;
}
int chu(int x,int y)
{
return x/y;
}
int main()
{
int input,x,y;
do
{
meu();
printf("請選擇:\n");
scanf("%d",&input);
if(input>=1 && input<=4)< p="">
{
int (*arr[5])(int x,int y)={0,Add,jian,cheng,chu};
//函數(shù)指針的數(shù)組
printf("請輸入兩個操作數(shù):\n");
scanf("%d%d",&x,&y);
printf("結(jié)果為:%d\n",(*arr[input])(x,y));
}
else if(input==0)
{
printf("退出\n");
}
else
{
printf("輸入錯誤:\n");
}
}
while(input);
return 0;
}
這是昨晚上跟著視頻老師學習寫的一個簡單計算器的代碼。就是用函數(shù)指針的數(shù)組
編譯雖然成功了,但是運行一會兒程序就遇到了特殊錯誤。
我也仔細檢查了,沒有使用中文標點符號的,都是用英文標點符號。
有時候是直接就報錯了。有時候又能運行一兩次。奇了個怪了。難道寫出了個bug,。想半天也不曉得具體是哪里的問題!
官網(wǎng)優(yōu)化
整站優(yōu)化
渠道代理
400-655-5776