问题及代码
/*
* Copyright (c) 2014, 烟台大学计算机学院
* All rights reserved.
* 文件名称:test.cpp
* 作 者:辛彬
* 完成日期:2014年 12 月 14 日
* 版 本 号:v1.0
*
* 问题描述: 补充函数。完成提示功能。
* 输入描述:选择。
* 程序输出:结果;
*/
#include <iostream>
using namespace std;
void eat();
void sleep();
void hitdoudou();
void run(void (*f)());
int main()
{
int iChoice;
do
{
cout<<"请选择(1-吃;2-睡;3-打;其他-退)";
cin>>iChoice;
if(iChoice==1)
run(eat);
else if(iChoice==2)
run(sleep);
else if(iChoice==3)
run(hitdoudou);
else
break;
}
while(true);
return 0;
}
void eat()
{
cout<<"我吃吃吃... ..."<<endl;
}
void sleep()
{
cout<<"我睡睡... ..."<<endl;
}
void hitdoudou()
{
cout<<"我不打还能干什么... ..."<<endl;
}
void run(void (*f)())
{
if(f==eat)
eat();
else if(f==sleep)
sleep();
else if(f==hitdoudou)
hitdoudou();
}
运行结果:
学习感悟:函数名就相当于数组名,也是一种地址,可以直接调用