【C系列5.8】指针专题之说明指针数组 (HZNUOJ 2024程序设计基础第五章作业)
注:此篇文章仅供学习使用,严禁抄袭以刷题量。
Description
说明一个指向3个函数的指针数组:void(*ptr[3])(int)={fun0,fun1,fun2}。根据不同输入选择不同的函数,例如:输入1,则打印,“这是1号函数的打印输出。”;输入2,则打印,“这是2号函数的打印输出。”;输入3,则打印,“这是3号函数的打印输出。”
Input
输入含多组测试数据。
对于每组测试数据,只含一个整数a,a为1、2、3中的一个。
Output
这是a号函数的打印输出(a为具体数字)。
Samples
input
3
output
这是3号函数的打印输出。
题目分析:
指针?
指针训练其实不需要指针
但是大家还是学一下吧
c(方法一)
#include <stdio.h>
void (*prt[3])(int);
void f1(int i)
{
printf("这是1号函数的打印输出。\n");
}
void f2(int i)
{
printf("这是2号函数的打印输出。\n");
}
void f3(int i)
{
printf("这是3号函数的打印输出。\n");
}
int main()
{
prt[0] = f1;
prt[1] = f2;
prt[2] = f3;
int n;
while (scanf("%d", &n) != EOF)
{
(*prt[n - 1])(n);
}
return 0;
}