主题:望高手指点一下!!!
#include<stdio.h>
void f1();
void f2();
void f3();
void main()
{
void (*f[3])()={f1,f2,f3};
int flag;
printf("请输入一个1,2,或者3.输入0退出.\n");
scanf("%d",&flag);
while(flag)
{
if(flag==1||flag==2||flag==3)
{
f[flag-1](flag-1);
printf("请输入一个1,2,或者3.输入0退出.\n");
scanf("%d",&flag);
}
else
{
printf("请输入一个合法的数(1-3),0退出。\n");
scanf("%d",&flag);
}
}
printf("程序退出:\n");
}
void f1()
{
printf("函数f1()被调用!\n");
}
void f2()
{
printf("函数f2()被调用!\n");
}
void f3()
{
printf("函数f3()被调用!\n");
}
以上程序中f[flag-1](flag-1);
该如何理解?????
void f1();
void f2();
void f3();
void main()
{
void (*f[3])()={f1,f2,f3};
int flag;
printf("请输入一个1,2,或者3.输入0退出.\n");
scanf("%d",&flag);
while(flag)
{
if(flag==1||flag==2||flag==3)
{
f[flag-1](flag-1);
printf("请输入一个1,2,或者3.输入0退出.\n");
scanf("%d",&flag);
}
else
{
printf("请输入一个合法的数(1-3),0退出。\n");
scanf("%d",&flag);
}
}
printf("程序退出:\n");
}
void f1()
{
printf("函数f1()被调用!\n");
}
void f2()
{
printf("函数f2()被调用!\n");
}
void f3()
{
printf("函数f3()被调用!\n");
}
以上程序中f[flag-1](flag-1);
该如何理解?????