1. 程式人生 > >加減乘除法運算(函數數組指針法)

加減乘除法運算(函數數組指針法)

int while break printf 加減乘 加減 inpu else if ret

#include<stdio.h> double add(double x, double y)//加 { return x + y; } double sub(double x, double y)//減 { return x - y; } double mul(double x, double y)//乘 { return x*y; } double div(double x, double y)//除 { if (y != 0) { return x/y; } else { printf("輸入錯誤"); return -1; } } void menu() { printf("************************\n"); printf("***1.add 2.sub***\n"); printf("***3.mul 4.div***\n"); printf("******* 0..exit ********\n"); printf("************************\n"); } int main() { int input = 1; double a = 0; double b = 0; double ret; double(*p[5])(double a, double b) = { 0, add, sub, mul, div }; while (input) { menu(); printf("請輸入需要的操作:\n"); scanf("%d",&input); if (input > 0 && input <= 4) { printf("請輸入操作數:\n"); scanf("%lf%lf",&a,&b); ret = (*p[input])(a, b); printf("%.2lf\n", ret); } else if (0==input) { break; } else { printf("輸入錯誤"); } } return 0; }

加減乘除法運算(函數數組指針法)