首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序中,函数fun的功能是: 用函数指针指向要调用的函数,并进行调用。 规定在【2】处使f指向函数f1,在【3】处使f指向函数f2。 当调用正确时,程序输出: x1=5.000000,x2=3.000000,x1*x1+x1*x2= 40.0000
给定程序中,函数fun的功能是: 用函数指针指向要调用的函数,并进行调用。 规定在【2】处使f指向函数f1,在【3】处使f指向函数f2。 当调用正确时,程序输出: x1=5.000000,x2=3.000000,x1*x1+x1*x2= 40.0000
admin
2017-09-23
53
问题
给定程序中,函数fun的功能是:
用函数指针指向要调用的函数,并进行调用。
规定在
【2】
处使f指向函数f1,在
【3】
处使f指向函数f2。
当调用正确时,程序输出:
x1=5.000000,x2=3.000000,x1*x1+x1*x2= 40.000000。
注意:部分源程序在文件BLANK1.C中。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include < stdio .h >
double f1 (double x)
{ return x*x; }
double f2 (double x, double y)
{ return x*y;}
double fun (double a, double b)
{
/*********found*********/
【1】
(*f)();
double r1, r2;
/*********found*********/
f=
【2】
;
r1=f(a);
/*********found*********/
f=
【3】
;
r2=(*f)(a,b);
return r1 + r2;
}
main ()
{ double x1 =5, x2 =3, r,
r = fun (xl, x2);
printf ("\nx1 = % f, x2 = % f,
x1 * x1 +x1 * x2 = % f\n",x1, x2, r) ;
}
选项
答案
(1)double (2)f1 (3)f2
解析
填空1:(*f)()代表一个指向函数的指针变量,而本题所被调用的f1、f2两函数的返回值均为double型,因而此空应该填写double。
填空2:因为在给函数指针变量赋值时,只需给出函数名而不必给出参数,因而此空应该填写f1。
填空3:同填空2,此空应该填写f2。
相关知识点:
(1)指向函数的指针变量的一般定义形式为:数据类型(*指针变量名)();
(2)函数的调用可以通过函数名调用,也可以通过函数指针调用。
(3)在给函数指针变量赋值时,只需给出函数名而不必给出参数。
转载请注明原文地址:https://kaotiyun.com/show/Fsxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
定义inta=5,b=20;若执行语句printf("%d\n",++a*--b/5%13);后,输出的结果为()。
有以下程序:#include<stdio.h>main(){inti=0,a=0;while(i<20){for(;;){if((i%5)==0)break;elsei--;}i+
以下程序:#include<stdio.h>#include<string.h>main(){charstr[]="abcd\n\123\xab";printf("%d",(str));}运行后的输
下面程序运行后的输出结果是()。#include<stdio.h>main(){inta[5]={1,0,4,2,0},b[5]={1,2,3,4,5},i,s=0;for(i=0;i<5;i++)s=s+b[a[
下面程序将二维数组a的行和列元素互换后存放到另一个二维数组b中,请填空。main(){inta[2][3]={{1,2,3},{4,5}},b[3][2],i,j;for(i=0;i<2;i++){for(j=0;j<3;j++)
以下函数定义的类型符是()。fff(doublex){printf("%f",x+x);}
以下程序的功能是:将输入的正整数按逆序输出。例如:若输入135,则输出531,请填空。#include<stdio.h>main(){intn,s;printf("Enteranumber:");scanf("%d",&n)
若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是()。
下列函数从字符数组s[]中删除和c一样的字符,请在下面横线处填空。voiddelete(s,C)chars[],c;{inti,j;for(i=j=0;();i++)if(s[i]!=’c’)s[j++]=
读取二进制文件的函数调用形式为:fread(buffer,size,count,pf);,其中buffer代表的是()。
随机试题
志乎古,必遗乎今。遗:
肾小管完成重吸收功能的部位主要在()
什么是安全、危险、事故、风险?它们之间有什么关系?
按设备组成要素,电信系统可分为()
重新计量其他长期职工福利净负债或净资产所产生的变动计入其他综合收益。()
民法法系的发展基础是()。
广告证明是表明广告客户的主体资格是否合法和广告内容是否真实、合法的证明文件、证件和资料。根据以上定义,可作为广告证明的一项是()。
解决系统“做什么”和“怎么做”问题的分别是结构化方法的哪两个阶段的任务
有三个关系R、S和T如下:则由关系R和关系S得到关系T的操作是()。
AmericanpubliceducationhaschangednumbersofAmericanparentsandteachersareinrecentyears.Onechangeisthatincreasin
最新回复
(
0
)