7、声明语句int *f();中f的含义是________。A.一个返回值为指针类型的函数名B.一个用于指向函数的指针变量C.一个用于指向一维数组的行指针D.一个用于指向整型数据的指针变量

题目

7、声明语句int *f();中f的含义是________。

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

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

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

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


相似考题
更多“7、声明语句int *f();中f的含义是________。”相关问题
  • 第1题:

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

    int f(int n)

    {

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

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

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


    正确答案:

  • 第2题:

    有以下程序 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错误。

  • 第3题:

    有以下程序:includedstdio.h>int f(int n); main( ){int a=3,s; s=f(a);s=s+f(a);printf(&qu

    有以下程序:

    includedstdio.h>

    int f(int n);

    main( )

    {int a=3,s;

    s=f(a);s=s+f(a);printf("%dkn",s);

    }

    int f(int n)

    {static int a=1;

    n+=a++;

    return n;

    }

    程序运行后的输出结果是( )。

    A.7

    B.8

    C.9

    D.10


    正确答案:C

    本题考查函数的调用。当执行s=f(a)时,进入fun函数,n=n+(a++),n的值为3,a的值为1,a++的意思是先用a的值,再将a加1为2,所以n的结果为4,也就是主函数中f(a)的结果为4;返回主函数,执行s=s+f(a),s为4,再次调用函数,此时n仍为3,a的值刚才已经自加2,所以计算后n的值为5,a自加l为3。返回主函数,f(a)的结果为5,所以s=4+5=9。

  • 第4题:

    有以下程序: 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

  • 第5题:

    关于变量的作用域,下列说法错误的是( )。

    A.类成员变量的作用域为类定义体

    B.方法参数的作用域为方法体

    C.对于for语句中定义的变量,当for语句执行完时,该变量就消亡了

    D.在方法void f(int i)的for语句块中,可以声明变量“int i;”


    参考答案:D

  • 第6题:

    设有函数原型声明voidf(int及doublea(2.2);intb(3);则以下函数调用中正确的是()。

    A、f(a+b);

    B、f(

    C、f(a);

    D、f(b);


    参考答案:D

  • 第7题:

    有以下程序 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

  • 第8题:

    有以下程序: 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.4, 3, 7

    B.3, 4, 7

    C.5, 2, 7

    D.2, 5, 7


    正确答案:A
    解析:函数f1是返回x、y中较大的一个,f2是返回x、y中较小的一个。因此e=4,f=3,g=7。

  • 第9题:

    若有说明语句“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错误。

  • 第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题:

    下面是类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

  • 第12题:

    有声明语句:delegate void TimeDelegate(string s),则以下语句可以和委托TimeDelegate绑定的方法是()

    • A、 void f(){  }
    • B、 string f(){  }
    • C、 void f(string a){  }
    • D、 string f(string a){  }

    正确答案:C

  • 第13题:

    已知递归函数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。

  • 第14题:

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

    int f(){

    static int s=0;

    s+=2;

    return s;

    }

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


    正确答案:

  • 第15题:

    下列程序的输出结果是( )。 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是个赋值表达式而不是逻辑表达式,所以循环体一次也不执行。

  • 第16题:

    已有如下数组定义和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

  • 第17题:

    关于函数声明,下面语法错误的是()

    A. func f(a, b int) (value int, err error)

    B. func f(a int, b int) (value int, err error)

    C. func f(a, b int) (value int, error)

    D. func f(a int, b int) (int, int, error)


    参考答案:C

  • 第18题:

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

    A.{;}

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

    C.;

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


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

  • 第19题:

    下列哪个赋值语句是正确的?

    A.char a=12;

    B.int a=12.0;

    C.int a=12.0f;

    D.int a= (int)12.0;


    正确答案:D
    解析:主要要熟悉数据类型的赋值和两种类型转换方法(即自动转换和强制转换)的使用方法。字符变量以 char类型表示,它在内存中占16位,它不能当做整数使用。选项B)中的12.0为double类型,赋给a时需要强制转换。选项C)中的12.0f为float类型,赋给a时也需要强制转换。选项D)用到了强制类型转换将double类型赋给整形a,所以正确。

  • 第20题:

    考虑下面的函数原型: void f(int a,int b=7,char c='@'); 下面的函数调用中,不合法的是

    A.f(5)

    B.f(5,8)

    C.f(6,'&')

    D.f(0,0,'@')


    正确答案:C
    解析:当一个函数中有多个默认参数时,则形参分布中默认参数应从右到左逐渐定义。在函数调用时,系统按从左到右的顺序将实参与形参结合,当实参的数组不足时,系统将按同样的顺序用说明或定义中的默认值来补齐所缺少的参数。在C)选项中,函数调用中只有两个实参,系统按从左到右的顺序将实参与形参结合时,实参'&'将赋值给血型形参b,显然则是非法的。

  • 第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题:

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

    设有定义语句

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

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

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

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

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


    正确答案:A

  • 第23题:

    在Java中,下列()是合法的声明。     

    • A、float f=1/3;
    • B、int i=1/3;
    • C、float f=1.01;
    • D、double d=999d;

    正确答案:A,B,D

  • 第24题:

    单选题
    有声明语句:delegate void TimeDelegate(string s),则以下语句可以和委托TimeDelegate绑定的方法是()
    A

     void f(){  }

    B

     string f(){  }

    C

     void f(string a){  }

    D

     string f(string a){  }


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