在说明语句:int*f();中,标识符f代表的是()。A、一个用于指向整型数据的指针变量B、一个用于指向一维数组的行指针C、一个用于指向函数的指针变量D、一个返回值为指针型的函数名

题目

在说明语句:int*f();中,标识符f代表的是()。

  • A、一个用于指向整型数据的指针变量
  • B、一个用于指向一维数组的行指针
  • C、一个用于指向函数的指针变量
  • D、一个返回值为指针型的函数名

相似考题
参考答案和解析
正确答案:D
更多“在说明语句:int*f();中,标识符f代表的是()。”相关问题
  • 第1题:

    设有定义语句int (*f)(int);,则以下叙述正确的是

    A.f是基类型为int的指针变量

    B.f是指向函数的指针变量,该函数具有一个int类型的形参

    C.f是指向int类型一维数组的指针变量

    D.f是函数名,该函数的返回值是基类型为int类型的地址


    正确答案:B
    解析: 本题考查的是指向函数的指针。语句int(*f)(int);是对一个函数的声明,其中f是指向该函数的指针,该函数有一个整型的参数,函数返回值类型为整型。

  • 第2题:

    ( 8 )已知递归函数 f 的定义如下:

    int f(int n)

    {

    if (n <= 1) return 1; // 递归结束情况

    else return n * f(n-2); // 递归 }

    则函数调用语句 f(5) 的返回值是 【 8 】 。


    正确答案:

  • 第3题:

    有以下程序 iht add (int a, int b) {return(a+b);} mian() {int k,(*f)(),a=5,b=10; f=add; … } 则以下函数调用语句错误的是______。

    A.k=(*f)(a,b);

    B.k=add(a,b);

    C.k=*f(a,b);

    D.k=f(a,b);


    正确答案:C
    解析:此题定义了指向函数的指针变量f指向了函数add的入口地址,所以,要调用函数,可以通过函数名(选项B的形式)或函数指针变量(选项A、D的形式)调用即可,而选项C中是先进行函数调用,然后对调用后返回的整型值求其指针值,事实上,对常量求指针值是不合理的,所以选项C错误。

  • 第4题:

    下列程序的输出结果是( )。 int f1(int x,int y){return x>y?x:y;} int f2(int x,int y){return x>y?y:x;} main() {int a=4,b=3,c=5,d=2,e,f,g; e=f2(f1(a,b),f1(c,d)); f=f1(f2(a,b),f2(c,d)); g=a+b+c+d-e-f printf("%d,%d,%d\n",e,f,g); }

    A.while循环执行10次

    B.循环是无限循环

    C.循环体语句一次也不执行

    D.循环体语句执行一次


    正确答案:C
    解析: 本题考查while循环。while循环的控制表达式k=1是个赋值表达式而不是逻辑表达式,所以循环体一次也不执行。

  • 第5题:

    已有如下数组定义和f函数调用语句,则在f函数的说明中,对形参数组array的正确定义方式为

    int a[3][4];

    f(a);

    A.f(array[3][4])

    B.f(int array[3][])

    C.f(int array[][4])

    D.f(int array[][])


    正确答案:C
    在定义数组时可以省略一维但不能省略二维,此题中选项B和D就违背了此条规则;再题干给出a数组的类型属于整型变量,所以答案为C

  • 第6题:

    有以下程序 int add(int a,int b){return(a+b);} main() {int k,(*f)(),a=5,b=10; f=add; } 则以下函数调用语句错误的是

    A.k=(*f)(a,b);

    B.k=add(a,b);

    C.k=*f(a,b);

    D.k=f(a,b);


    正确答案:C

  • 第7题:

    在说明语句int *f();中,标识符f代表的是______。

    A.一个用于指向整型数据的指针变量

    B.—个用于指向—维数组的行指针

    C.—个用于指向函数的指针变量

    D.一个返回值为指针型的函数名


    正确答案:D
    解析:带回指针值的函数,其—般定义形式为:类型标识符*函数名(参数表);例如,int*f(x,y);其中,f是函数名,调用它以后能得到—个指向整型数据的指针(地址),x,y是函数f的形参。在f的两侧分别为*运算符和()预算符,而()优先级高于*,因此f先与()结合,显然是函数形式。这个函数前面有一个*,表示此函数是指针型函数(函数值是指针)。前面的int表示返回的指针指向整型变量。

  • 第8题:

    若有说明语句“int a;float b;”,以下输入语句正确的是( )。

    A.scanf("%f%f",&a,&b);

    B.scanf("%f%d",&a,&b);

    C.scanf("%d,%f",&a,&b);

    D.scanf("%6.2f%62f",&a,&b);


    正确答案:C
    解析:说明语句中变量a为整型,变量b为实型。选项A、B和D的格式控制中变量a的格式描述符为f,与定义的变量类型不符,故选项A、B和D错误。

  • 第9题:

    若有以下程序includevoid f(int n);main(){ void f(int n);f(5);}void f(int n){print

    若有以下程序 #include<stdio.h> void f(int n); main() { void f(int n); f(5); } void f(int n) {printf(“%d\n”,n);} 则以下叙述中不正确的是

    A.若只在主函数中对函数f进行说明,则只能在主函数中正确调用函数f

    B.若在主函数前对函数f进行说明,则在主函数和其后的其他的其他函数中都可以正确调用函数f

    C.对于以上程序,编译时系统会提示出错信息;提示对f函数重复说明

    D.函数f无返回值,所以可用void将其类型定义为无值型


    正确答案:C
    解析:若一个函数定义在主调函数之后,其返回值不是int或char型,则必须对之进行函数说明。可在函数外说明也可以在函数内说明,在函数外说明,在其后的所有函数均可调用该函数,若在函数内说明,则只能在本函数内调用该函数。函数只能定义一次,但函数说明可以出现多次。

  • 第10题:

    设int f (int);和int g(int);是函数f和g的原形,以下将f作为语句调用的是______ 。

    A.g(f(3))

    B.f(g(3));

    C.g(f(3)+2);

    D.p=f(g (3)+1);


    正确答案:D
    解析:p=f(g(3)+1):函数f被作为一个语句调用。

  • 第11题:

    设有定义语句 则以下叙述正确的是( ).A.f是指向函数的指针变量,该函数具有_个int类型的形参SX

    设有定义语句

    则以下叙述正确的是( ).

    A.f是指向函数的指针变量,该函数具有_个int类型的形参

    B.f是基类型为int的指针变量

    C.f是指向int类型一维数组的指针变量

    D.f是函数名,该函数的返回值是基类型为int类型的地址


    正确答案:A

  • 第12题:

    在声明语句:int*f();中,标识符f代表的是()

    • A、一个用于指向整型数据的指针变量
    • B、一个用于指向一维数组的行指针
    • C、一个用于指向函数的指针变量
    • D、一个返回值为指针型的函数名

    正确答案:D

  • 第13题:

    阅读以下程序includemain(){Int Case;float printF;printf("请输入2个数:");scanf("%d

    阅读以下程序 #include<stdio.h> main() {Int Case;float printF; printf("请输入2个数:"); scanf("%d %f",&Case,&printF); printf("%d%f\n",Case,printF); } 以下说法正确的是( )。

    A.定义浯句出错,Case是关键字,不能用作用户自定义标识符,printF不能用作用户自定义标识符

    B.定义语句出错,Int无法被识别

    C.定义语句无错,scanf不能作为输入函数使用

    D.定义语句无错,printf不能输出Case的值


    正确答案:B
    解析:C语亩足一种大小写敏感的语言,因此Int应为int,而Case printF则可以使用。

  • 第14题:

    已知递归函数f的定义如下:

    int f(int n){

    if(n<= 1)return 1;//递归结束情况f5=5*f3=5*3*f1

    else return n*f(n-2); //递归

    }

    则函数调用语句f(5)的返回值是______。


    正确答案:15
    15 解析:函数递归调用,f(5)=5*f(3)=5*(3*f(1))=15。

  • 第15题:

    ( 8 )已知有函数 f 的定义如下:

    int f(){

    static int s=0;

    s+=2;

    return s;

    }

    则在某程序中第 2 次执行函数调用语句 f( ) ; 时 , 函数 f 的返回值是 ___________ 。


    正确答案:

  • 第16题:

    有以下程序: int add(int a,intB){return(a+B);} main() { int k,(*f)(),a=5,b=10; f=add; } 则以下函数调用语句错误的是( )。

    A.k=(*f)(a,B);

    B.k=add(a,B);

    C.k=*f(a,B);

    D.k=f(a,B);


    正确答案:C

  • 第17题:

    下面选项中,不属于C++语句的是( )。

    A.{;}

    B.cout<<"Hello!"<<endl

    C.;

    D.{int i=1;int f=i;cout<<f<<endl;}


    正确答案:B
    解析:选项A和选项D是复合语句,C是空语句,而选项B中没有以“;”结尾,这不是C++语句。

  • 第18题:

    已知有下列类的说明,则下列哪个语句是正确的?public class Test { private float f=1.0f; int m=12; static int n=1; public static void main(String arg[]) { Test t= new Test(); }}

    A.t.f;

    B.this. n

    C.Test.m;

    D.Test.f;


    正确答案:A
    解析:此题主要考查对象的正确使用,其格式为对象名.调用的方法名或变量名。在static方法中,不能使用 this。变量m和f都不是静态成员,所以不能用类名.成员方式访问。

  • 第19题:

    已知有下列类的说明,则下列( )语句是正确的。 publicClass Test{ private float f=1.0f; int m=12; static int n=1: public static void main(Stringarg[]){ Test t=new Test(): } }

    A.t.f;

    B.this.n;

    C.Test.m;

    D.Test.f;


    正确答案:A

  • 第20题:

    若有以下程序:includevoid f(int n);main(){void f(int n); f(5);}void f(int n){prin

    若有以下程序: #include<stdio.h> void f(int n); main() { void f(int n); f(5); } void f(int n) { printf("%d\n",n);}则以下叙述中不正确的是( )。

    A.若只在主函数中对函数f进行说明,则只能在主函数中正确调用函数f

    B.若在主函数前对函数f进行说明,则在主函数和其后的其他函数中都可以正确调用函数f

    C.对于以上程序,编译时系统会提示出错信息:对f函数重复说明

    D.函数f无返回值,所以可用void将其类型定义为无返回值型


    正确答案:C
    解析:f函数没有重复说明,在main函数中是对f函数声明,在main函数外则是对f函数的定义。

  • 第21题:

    下面是类MyClass的定义,对定义中各语句描述正确的是( )。 class MyClass { private: int x,y, z; public: void MyClass(int A) { x=a; } //① int f(int a, int B) //② { x=a; y=b; } int f(int a,

    A.语句①是类MyClass 的构造函数的定义

    B.语句②和③实现类成员函数的重载

    C.语句④实现对类成员变量x的更新操作

    D.语句①、②、③和④都不正确


    正确答案:D
    解析:在C++中构造函数没有返回类型,所以语句①是错误的。语句②和语句③在进行f(x,y)调用时会产生二义性。静态成员函数不能直接访问类中说明的非静态成员。所以语句④也是错误的。

  • 第22题:

    阅读以下程序

    #include<stdio,h>

    main( )

    { int case;float printF;

    printf(“请输入2个数:”);

    scanf(“%d%f”,&zase,&rintF);

    prinff(“%d%f\n”,case,printF);

    }

    该程序在编译时产生错误,其出错原因是

    A.定义语句出错,ca8e是关键字,不能用作用户自定义标识符

    B.定义语句出错,pfintF不能用作用户自定义标识符

    C.定义语句无错,scanf不能作为输入函数使用

    D.定义语句无错,printf不能输出case的值


    正确答案:A
    解析:标识符不能与c编译系统已经预定义的、具有特殊用途的保留标识符(即关键字)同名,否则程序在编译时会出现错误。题目源程序中使用了已经预定义的关键字car,所以将出现错误。

  • 第23题:

    下面是类MyChss的定义,对定义中语句描述正确的是( )。class MyClass{public:void MyClass(int a){X=a;) //①int f(int a, int b) //②{X=a;Y=b;}int f(int a,int b,int c=0) //③{X=a;Y=b;Z=c;stahc void g (){X=10;) //④private:int X,Y,Z;};

    A.语句①是类MyClass的构造函数定义

    B.语句②和语句③实现类成员函数的重载

    C.语句④实现对类成员变量X的更新操作

    D.语句①②③和④都不正确


    正确答案:D

  • 第24题:

    单选题
    在说明语句:int*f();中,标识符f代表的是()。
    A

    一个用于指向整型数据的指针变量

    B

    一个用于指向一维数组的行指针

    C

    一个用于指向函数的指针变量

    D

    一个返回值为指针型的函数名


    正确答案: C
    解析: 暂无解析