itgle.com

若主函数有变量定义:int x=1 ; double y=2.3 ; 且有合法的函数调用语句f (y , x); 则下列关于函数f的原型声明中一定错误的是 。A.void f(double, int);B.int f(int , int);C.int f(double, double);D.void f(double, int, int);

题目

若主函数有变量定义:int x=1 ; double y=2.3 ; 且有合法的函数调用语句f (y , x); 则下列关于函数f的原型声明中一定错误的是 。

A.void f(double, int);

B.int f(int , int);

C.int f(double, double);

D.void f(double, int, int);


相似考题
更多“若主函数有变量定义:int x=1 ; double y=2.3 ; 且有合法的函数调用语句f (y , x); 则下列关于函数f的原型声明中一定错误的是 。”相关问题
  • 第1题:

    对下列程序段的描述正确的是()。includeint Fun(int,int)void main(){cout<

    对下列程序段的描述正确的是( )。 #include<iostream.h> int Fun(int,int) void main() { cout<<Fun(5,50)<<endl; } int Fun(int x,int y) { return X*X+y*y; }

    A.该函数定义正确,但函数调用方式错误

    B.该函数调用方式正确,但函数定义错误

    C.该函数定义和调用方式都正确

    D.该函数定义和调用方式都错误


    正确答案:C

  • 第2题:

    有下列函数定义: int fun(double a,double b) {return a*b;} 若下列选项中所用变量都已经正确定义并赋值,错误的函数调用是( )。

    A.if(fun(x,y)){……}

    B.z=fun(fun(x,y),fun(x,y));

    C.z=fun(fun(X,y)x,y);

    D.fun(x,y);


    正确答案:C
    本题考查函数在函数调用时参数的传递形式,形参与实参参数个数类型要一致。

  • 第3题:

    有以下函数定义: void fun(int n,doub x) {……} 若以下选项中的变量都已正确定义并赋值,则对函数fun的正确调用语句是( )。

    A.fun(int y,double m);

    B.k=fun(10,12.5);

    C.fun(x,n);

    D.void fum(n,x);


    正确答案:C
    解析:选项A中应将y和m前面的函数的类型说明符去掉,故选项A不正确;选项B中函数传了2个参数,其中一个为整型—个为浮点型,而fun()函数在定义时声明的2个参数,一个为整型一个为双精度型,其参数类型不一致,故选项B不正确;选项D在调用函数时,不应该再声明其返回类型,故选项D不正确。所以,4个选项中选项C符合题意.

  • 第4题:

    若x,y均定义为int型,z定义为double型,以下不合法的scanf函数调用语句是()。

    A.scanf("%d%lx,%le",&x,&y,&z);

    B.scanf("%2d*%d%lf"&x,&y,&z);

    C.scanf("%x%*d%o",&x,&y);

    D.scanf("%x%o%6.2f",&x,&y,&z)


    正确答案:D

  • 第5题:

    对下列程序的描述正确的是()。include using namespace std;int fuc(int,int);int mai

    对下列程序的描述正确的是( )。 #include <iostream> using namespace std; int fuc(int,int); int main(){ cout<<fuc(1,10)<<endl; return 0; } int fuc(int x,int y){ return x*x+y*y; }

    A.该函数的定义和调用方式都是错误的

    B.该函数的定义和调用方式都是正确的

    C.该函数调用方式正确,但函数定义错误

    D.函数定义正确,但函数调用方式错误


    正确答案:B
    解析:函数定义时要给出函数类型、函数名、函数参数表和函数体。fuc()都做到了,该函数的定义和调用方式都是正确的。

  • 第6题:

    下面是类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)调用时会产生二义性。静态成员函数不能直接访问类中说明的非静态成员。所以语句④也是错误的。

  • 第7题:

    有以下函数定义: int fun(double a,doubleB){return a*b;} 若以下选项中所用变量都已正确定义并赋值,错误的函数调用是( )。

    A.if(fun(x,y)){……}

    B.z=fun(fun(x,y),fun(x,y));

    C.z=fun(fun(x,y)x,y);

    D.fun(x,y);


    正确答案:C

  • 第8题:

    设函数findbig已定义为求3个数中的最大值。以下程序将利用函数指针调用findbig函数,请填空。main(){ int findbig(int,int,int); int (*f)(),x,y,z,big; f=; scanf("%d%d%d",&x,&y,&z); big=(*f)(x,y,z); printf("big=%d\n",big);}


    正确答案:findbig
    在main()函数中,int findbig();是对被调函数的说明,其功能是告诉系统在本函数中将用到该函数且返回整型值。int (*f)();说明f是一个指向函数的指针变量,此函数带回整型的返回值。赋值语句f=findbig;的作用是将函数findbig的入口地址赋给指针变量f,这时f就是指向函数findbig的指针变量。要注意的是,在给函数指针变量赋值时,只需给出函数名而不必给出参数,因为是将函数的入口地址赋给f,而不涉及实参与形参的结合问题。故本题答案为findbig。

  • 第9题:

    有以下函数定义; void fun(int n,double x){......} 若以下选项中的变量都已正确定义并赋值,则对函数fun正确调用语句是______。

    A.fun(int y,double m);

    B.k=fun(10,12.5);

    C.fun(x,n);

    D.void fun(n,x);


    正确答案:C
    解析:函数调用的一般形式为;函数名(实参表列);,实参与形参的个数应相等,类型应一致,在调用函数时,不要指定其返回类型,对于返回类型为void的函数,不能作为赋值表达式的组成部分,所以选C。

  • 第10题:

    对下列程序的描述中,正确的是()。includeusing namespace std;int Fun(int,int);int m

    对下列程序的描述中,正确的是( )。 #include<iostream> using namespace std; int Fun(int,int); int main() { cout<<Fun(5,50)<<end1; return 0; } int Fun(int x,int y) { return x*x+y*y; }

    A.该函数定义正确,但函数调用方式错误

    B.该函数调用方式正确,但函数定义错误

    C.该函数的定义和调用方式都是正确的

    D.该函数的定义和调用方式都是错误的


    正确答案:C
    解析:函数定义时要给出函数类型、函数名、函数参数表和函数体。本程序的Fun()都做到了,所以此函数的定义也是正确的。该函数的定义和调用方式都是正确的。

  • 第11题:

    已知一个函数的定义如下:double fun(int x,double y){⋯⋯}则该函数正确的函数原型声明为()

    • A、double fun(intx,doubley)
    • B、fun(int x,doubley)
    • C、double fun(int,double);
    • D、fun(x,y);

    正确答案:C

  • 第12题:

    单选题
    已知函数定义Functionf(x1%,x2%)as integer,则下列调用语句正确的是()
    A

    a=f(x,y)

    B

    call f(x,y)

    C

    f(x,y)

    D

    fxy


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

  • 第13题:

    以下正确的函数原型语句是(48)。

    A.double fun(int x,int y);

    B.double fun(int x;int y);

    C.double fun(int,int);

    D.double fun(int x,y);


    正确答案:C
    解析:函数原型不必包含参数的名字,而只要包含参数的类型。函数原型和函数定义在返回类型、函数名和参数表上必须完全一致。

  • 第14题:

    有以下函数定义: void fun(int n, double x) {……} 若以下选项中的变量都已正确定义并赋值,则对函数fun的正确调用语句是( )。

    A.fun(int y,double m);

    B.k=fun(10,12.5);

    C.fun(x,n);

    D.void fun(n,x);


    正确答案:C
    解析:本题考查函数调用。函数调用时,实参前不需加类型说明,选项A)错误;题目中的函数没有返回值,所以选项B)错误;函数调用前不需要加类型说明,选项D)错误。

  • 第15题:

    下列函数参数默认值定义错误的是( )。

    A.f(int x,int y=O)

    B.fun(int x=100)

    C.f(int x=0,int y)

    D.fun(int x=f())(函数f()已经定义)


    正确答案:C
    解析:允许在函数的说明或定义时给一个或多个参数指定默认值。参数默认值必须从右向左定义,即在一个指定了默认值的参数的右边,不能出现没有指定默认值的参数。

  • 第16题:

    若有以下变量和函数说明:includecharCh='*';void sub(int x,int y,char ch,double*

    若有以下变量和函数说明: #include<iostream.h> charCh='*'; void sub(int x,int y,char ch,double*Z) { switch(ch) { case'+':*Z=x+y;break; case'-':*Z=x-y;break: case'*':*Z=x*y;break; case'/':*z=x/y;break: } } 以下合法的函数调用语句是( )。

    A.sub(10,20,Ch,y);

    B.sub(1.2+3,2*2,'+',&Z);

    C.sub(sub(1,2,'+',&y),sub(3,4'+',&x),'-',&y);

    D.sub(a,b,&x,ch);


    正确答案:B

  • 第17题:

    下列函数参数默认值定义错误的是( )。

    A.Fun(int x,int y=0)

    B.Fun(int x=100)

    C.Fun(int x=0,int y)

    D.Fun(int x=f())(假定函数f()已经定义)


    正确答案:D

  • 第18题:

    关于下列程序段的描述中,正确的是()。 include int fun(int,int); void main() { co

    关于下列程序段的描述中,正确的是( )。 #include<iostream.h> int fun(int,int); void main() { cout<<fun(1,2)<<endl; } int fun(int x,int y) { return X+y; }

    A.该函数定义正确,但函数调用方式错误

    B.该函数调用方式正确,但函数定义错误

    C.该函数定义和调用方式都正确

    D.该函数定义和调用方式都错误


    正确答案:C
    解析: 函数定义的一般形式:类型标识符函数名(形式参数列表){声明部分;语句}。函数调用的一般格式:函数名(实参列表)。而“int fun(int,int)”为函数声明,可以不写形参名,只写形参的类型。所以,可以看出函数fun的定义和调用都是正确的。

  • 第19题:

    有以下函数定义:void fun(int n, double x) { …… }若以下选项中的变量都已正确定义并赋值,则对函数fun正确调用的语句是A.fun(int y,double m); B.k=fun(10,12.5); C.fun(x,n); D.void fun(n,x);


    正确答案:C
    选项A中,fun(int y,double m);中变量y和m前不需要类型说明;因为函数fun(10,12.5)没有返回值,所以选项B错误;调用函数fun时,不需要在函数前面加上void,所以选项D错误。故本题的正确答案是选项C。

  • 第20题:

    以下正确的函数定义是______。

    A.double f1(int x,int y)

    B.double f1(int x;int y)

    C.double f1(int x;float y)

    D.double f1(int x,y)


    正确答案:A

  • 第21题:

    有以下函数定义: int mypr(double a,double b) { return a*b; } 若以下选项中所用变量都已正确定义并赋值,错误的函数调用是

    A.if(mypr(x,y)){……}

    B.z=mypr(mypr(x,y),mypr(x,y));

    C.z=mypr(mypr(x,y)x,y);

    D.mypr(x,y);


    正确答案:C
    解析:本题考查了函数调用的方法。选项C函数调用mypr(x,y)可以作为表达式再参与运算,但是与另一个运算数x之间没有任何运算符所以是错误的。

  • 第22题:

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

  • 第23题:

    已知函数定义Functionf(x1%,x2%)as integer,则下列调用语句正确的是()

    • A、a=f(x,y)
    • B、call f(x,y)
    • C、f(x,y)
    • D、fxy

    正确答案:A

  • 第24题:

    单选题
    对于函数定义:  void FUN(int n, double x)  {  … }  若以下选项中的变量都已定义并赋值,则对函数FUN的正确调用的语句是()。
    A

    k=FUN(x,n);

    B

    void FUN(n,x);

    C

    FUN(int y,double m);

    D

    FUN(10,12.5);


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