首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

关于c语言指针函数的有关问题,

2012-11-09 
关于c语言指针函数的问题,请教高手!最近在学习c语言指针部分,用到指针函数,写了如下程序,运行有错误。但我

关于c语言指针函数的问题,请教高手!
最近在学习c语言指针部分,用到指针函数,写了如下程序,运行有错误。但我明明觉得不错哇!望高手赐教!!
#include <stdio.h>


void main()
{
  double add(double,double); //declare add,sub,mul,div functions
  double sub(double,double);
  double mul(double,double);
  double div(double,double);
   
  double (*oper_fun[])(double,double)={add,sub,mul,div};

  while(1)
  {  
  double a,b,c;
  printf("This is a simple calculator,it has 5 functions as follows!\n");
  printf("1.add\t2.sub\t3.mul\t4.div\t");
  printf("Please enter as such format:number number operation\n");
  scanf("%f%f%d",&a,&b,&c);
  printf("Result is:%f\n",oper_fun[ c - 1](a,b));
  }


}

  double add(double x,double y) //add function
  {return x+y;}
  double sub(double x,double y) //sub function
  {return x-y;}
  double mul(double x,double y) //mul function
  {return x*y;}
  double div(double x,double y) //div function
  {return x/y;}



[解决办法]

C/C++ code
#include <stdio.h>void main(){    double add(double,double); //declare add,sub,mul,div functions    double sub(double,double);    double mul(double,double);    double div(double,double);    double (*oper_fun[])(double,double)={add,sub,mul,div};    while(1)    {           double a,b;        int c; //C改整型        printf("This is a simple calculator,it has 5 functions as follows!\n");        printf("1.add\t2.sub\t3.mul\t4.div\t");        printf("Please enter as such format:number number operation\n");        scanf("%lf%lf%d",&a,&b,&c); //使用%lf即可        printf("Result is:%f\n",oper_fun[ c - 1](a,b));    }}double add(double x,double y) //add function{return x+y;}double sub(double x,double y) //sub function{return x-y;}double mul(double x,double y) //mul function{return x*y;}double div(double x,double y) //div function{return x/y;} 

热点排行