函数指针终极练习
来源:互联网 发布:淘宝金融服务 编辑:程序博客网 时间:2024/04/27 21:58
设计 9个任务函数task0()-task8()只输出一句话:如task0()输出“task0 is called!”;设计一个调度函数schedule()输入一个字符串如"012345"然后返回一个函数指针数组和字符串的长度作为执行函数 execute()的参数进行调度任务函数。主函数只有调度函数。
#define M 1000typedef void (*ptask)();void task0(){ printf("task0 is called!\n"); } void task1(){ printf("task1 is called!\n"); } void task2(){ printf("task2 is called!\n"); } void task3(){ printf("task3 is called!\n"); } void task4(){ printf("task4 is called!\n"); } void task5(){ printf("task5 is called!\n"); } void task6(){ printf("task6 is called!\n"); } void task7(){ printf("task7 is called!\n"); } void task8(){ printf("task7 is called!\n"); }void execute(ptask* fun , int len){ int i= 0 ; for( i = 0 ; i < len ; i++){ ptask pfun= fun[i]; pfun(); }}void schedule(){ ptask fun[M]; int len ,i,temp; char str[M]; printf("please input a string\n"); while( scanf("%s",str),str){ len= strlen(str); for( i = 0 ; i < len ; i++){ temp = str[i]-'0'; switch(temp){ case 0:fun[i] = task0;break; case 1:fun[i] = task1;break; case 2:fun[i] = task2;break; case 3:fun[i] = task3;break; case 4:fun[i] = task4;break; case 5:fun[i] = task5;break; case 6:fun[i] = task6;break; case 7:fun[i] = task7;break; case 8:fun[i] = task8;break; } } execute(fun , len); }}int main(){ schedule(); return 0;}
- 函数指针终极练习
- 指针函数练习
- C 函数指针练习
- 指针函数小练习
- 函数指针练习
- 函数指针与指针函数练习
- typedef 函数指针 小练习
- c函数和指针练习
- 函数的返回值是指针--练习
- 171107-函数指针练习【连续第十五天】
- C语言练习篇-8函数指针练习
- 20150604高级指针及函数指针_练习
- 学习指针-指针终极理解
- 学习指针-指针终极理解
- 学习指针-指针终极理解
- 指针练习
- 指针练习
- 练习指针
- 判断输入框输入的是否是数字,不是则阻止提交
- Java发送简单邮件
- 数论题目分类
- sigsetjmp, siglongjmp函数说明
- ACM数学(转)
- 函数指针终极练习
- 我居然在 CSDN 开过博客?天,都忘记了。
- poj 1276 Cash Machine(多重背包+倍增)
- 更新屏幕值得函数
- 盖房子
- 分析QQ和QQ游戏的价值特性极其快速发展的原因,并对其盈利模式进行探讨
- 三种数据库的分页语句
- 队列操作
- itat的预赛