更多“若有定义和语句:int a;char c;float f;scanf("%d,%c,%f",&a,&c,&f);若通过键盘输 ”相关问题
  • 第1题:

    在C++语言中,若类C中定义了一个方法int f(int a,int b),那么方法(33)不能与该方法同时存在于类C中。

    A.int f(int x,int y)

    B.int f(float a,int b)

    C.float f(mtx,float y)

    D.int f(int x,float y)


    正确答案:A
    解析:本题考查的是面向对象程序设计中的函数名重载机制。在C++中允许在同一个作用域中的同一个函数名字对应着多个不同的函数实现,这种现象称为重载(overloading),这些函数被称为重载函数。每一个重载函数必须具有不同的函数签名,即函数参数的个数不同或者参数的类型不同。根据上述概念来解答试题(33)。在C++中有一类特殊的作用域:类作用域。类中所有的成员都具有类作用域。如果在类C的作用域中存在不止一个名字为f的方法,那么这些方法或者具有不同的参数个数,或者具有不同的参数类型。将4个备选答案依次与题干中给出的方法作比较,可以发现选项A给出的方法的名字、参数个数及参数类型都与题干中给出的方法相同,这就违背了函数名重载的原则,因此该方法不可能与题干中给出的方法共存于类C中。因此正确答案为A。

  • 第2题:

    运行下列程序时,若输入的数据为“1,2,3”,则输出结果是( )。 main() { float a,b,c,t; scanf("%f,%f,%f",&a,&b,&c); if(a<

    A.int a[5]={0,1,2,3,4,5};

    B.char a[]={0,1,2,3,4,5};

    C.char a={'A','B','C');

    D.int a[5]="0123";


    正确答案:B
    解析: 在定义数组时,如果赋给的初始值个数大于数值的长度,这样就会越界,因此选项A错误;选项C中定义的是一个字符变量C;选项D)中整型数组a中只能存储整型数据,而不能存储字符串常量“0123”。

  • 第3题:

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

  • 第4题:

    设变量均已正确定义,若要通过 scaIIf(”%d%c%d%c”,&al,&el,&a2,&c2); 语句为变量

    设变量均已正确定义,若要通过

    scaIIf(”%d%c%d%c”,&;al,&;el,&;a2,&;c2);

    语句为变量al和a2赋数值l0和20,为变量cl和c2赋字符x和Y。以下所示的输入形式中正确的是( )。(注:口代表空格字符)


    正确答案:C
    输入数据的格式必须与scanf()的格式控制串完全匹配,如果A、B、Cc选项中在数字l0后面均输入了空格,则会将空格赋给变量cl,而不是把x赋给cl,所以选择C选项。

  • 第5题:

    设有定义int a=1;float f=1.2;char C=a;,则下列表示错误的是( )。 A.++a;B.f一一;SXB

    设有定义int a=1;float f=1.2;char C=a;,则下列表示错误的是( )。

    A.++a;

    B.f一一;

    C.c++;

    D.8++;


    正确答案:D
    ++、--运算符不能用于常量表达式。

  • 第6题:

    设有定义int a;float b;执行scanf("%2d%f",&a,&b);语句时,若从键盘输入876543.0<回车>,a

    设有定义int a;float b;执行scanf("%2d%f",&a,&b);语句时,若从键盘输入876543.0<回车>,a和b的值分别是______。

    A.876和543.000000

    B.87和6.000000

    C.87和543.000000

    D.76和543.000000


    正确答案:B
    解析: “%2d”指定输入数据所占宽度为2,&是C语言中的求地址运算符。

  • 第7题:

    设有定义:“int a;float b;”,执行“scanf("%2d%f",&a,&b);”语句时,若从键盘输入876543.0<回车>,a和b 的值分别是( )。

    A.A.876和543.000000

    B.87和6.000000

    C.87和6543.000000

    D.76和543.000000


    正确答案:B
    本题考查scanf函数,输入格式符%2d%f表示只接收了字符,其中a输入的值为2位的十进制整数,即87,然后将紧接着的6赋给b,因为b的值为单精度数在,即6.000000,故选择B选项。

  • 第8题:

    若有定义“double a;”,则正确的输入语句是( )。

    A.A.seaM("%1f",&a);

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

    C.scanf("%1f",&a)

    D.scanf("%1e",&a);


    正确答案:D
    本题考查seanf函数的调用形式:scanf(格式字符串,输入项地址表)。题中定义变量a为双精度型变量,双精度变量的格式符为“le”;变量的地址用取地址符“&”加变量名表示,所以选项D正确。

  • 第9题:

    若有说明语句:doubleop,a;,则能通过scanf语句正确给输入项读入数据的程序段是( )。

    A.*p=&a;scanf("%1f",p);

    B.*p=&a;scanf("%f",p);

    C.p=&a;scanf("%1f",*p);

    D.p=&a;scanf("%1f",p);


    正确答案:D
    解析:double*p,a;语句表示定义了一个指向双精度型的指针变量p和双精度型变量a,而语句p=&a表示将变量a的地址赋给指针变量p;scanf ("%1f",p)表示用键盘输入的数赋给指针变量p所指向的地址单元中。scanf()函数要求在输入double型数据,格式控制符必须用%if (或%le)。否则,数据不能正确输入。所以选项D)为正确答案。

  • 第10题:

    下列定义语句正确的是:

    A.char c="/n";

    B.int i=12;

    C.float f=2.8;

    D.boolean b=null;


    正确答案:B

  • 第11题:

    若已定义:float m;拟从键盘输入135.78这一数据给变量m,则应选用的语句是()

    • A、scanf(“%5.2f”,&m)
    • B、scanf(“%3.2f”,&m)
    • C、scanf(“6.2f”,&m)
    • D、scanf(“6f”,&m)

    正确答案:D

  • 第12题:

    假设定义变量如下:int  x; float  y;以下输入语句中()是正确的。

    • A、scanf(“%f%f”,&y,&x);
    • B、scanf(“%f%d”, y, x);
    • C、scanf(“%f%d”,&y,&x);
    • D、scanf(“%5.2f%2d”,&y,&x);

    正确答案:C

  • 第13题:

    若有定义“double a;”,则正确的输入语句是( )。

    A.scanf("%1f,A) ;

    B.scanf("%f,&A);

    C.scanf("%1f,&A)

    D.scanf("%1e",&A);


    正确答案:D
    解析:scanf函数的调用形式是:scanf(格式字符串,输入项地址表)。其中,“格式字符串”是要输入的变量的格式符;“输入项地址表”是要输入的变量的地址。题中定义变量a为双精度型变量,双精度变量的格式符为“1e”;变量的地址用取地址符“&”加变量名表示,例如变量a的地址为“&a”。

  • 第14题:

    若a是float型变量,b是unsigned型变量,以下输入语句合法的是 ( )

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

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

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

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


    正确答案:C

  • 第15题:

    若有定义“double a;”,则正确的输入语句是( )。A.seaM("%1f",a);B.scanf("%f",&a);SXB

    若有定义“double a;”,则正确的输入语句是( )。

    A.seaM("%1f",a);

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

    C.scanf("%1f",&a)

    D.scanf("%1e",&a);


    正确答案:D
    本题考查seanf函数的调用形式:scanf(格式字符串,输入项地址表)。题中定义变量a为双精度型变量,双精度变量的格式符为“le”;变量的地址用取地址符“&”加变量名表示,所以选项D正确。

  • 第16题:

    若变量已正确定义为int型,要通过语句:scanf(”%d,%d,%d”,&a,&b,&C.;给a赋值l、给b赋值2、给

    若变量已正确定义为int型,要通过语句:scanf(”%d,%d,%d”,&;a,&;b,&C.;给a赋值l、给b赋值2、给C赋值3,以下输入形式中错误的是( )。(注:口代表一个空格符)


    正确答案:D
    scanf()的格式控制串可以使用其他非空白字符,如本题中的逗号,但在输入时必须输入这些字符;以保证匹配。所以逗号必须输入。

  • 第17题:

    若有定义语句:

    正确的输入语句是( )。

    A.scanf(”%lf%If"’,X,Y);

    B.scanf(”%f%f¨X,Y);

    C.scanf(”%f%f¨,X,y);

    D.scanf(”%lf%le”,px,PY);


    正确答案:D
    %1f,%le是针对double类型的数据,如果仅甩%f,输入的数据可能不能被完全接收,数据的精度可能不足。%f主要针对float类型的变量输入,选项8错误。根据瓣Hlf(格式,变量地址),选项A,C错误。故答案为D选项。

  • 第18题:

    若a是float型变量,b是unsigned型变量,以下输入语句合法的是 ( )

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

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

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

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


    正确答案:C

  • 第19题:

    高有定义 int a; float b; 执行 scanf("%2d%f",&a,&b);语句时,若从键盘输入876<空格> 854.0<回车>,a 和 b 的值分别是( )。

    A.876和543.000000

    B.87和6.000000

    C.87和543.000000

    D.76和543.000000


    正确答案:B
    seanf函数用空格区分不同字符串的输入,因此876和543.0被看作两段输入。%2d只选取了第一个输人中的前两位,%f选取随后的数字作为浮点数,因此输出结果为87和6.000000。

  • 第20题:

    设有定义:“int a;float b;”,执行“scanf("%2d%f",&a,&b);”语句时,若从键盘输入876543.0,a和b 的值分别是( )。

    A.876和543.000000

    B.87和6.000000

    C.87和543.000000

    D.76和543.000000


    正确答案:B
    本题考查scanf函数,输入格式符%2d%f表示只接收了字符,其中a输入的值为2位的十进制整数,即87,然后将紧接着的6赋给b,因为b的值为单精度数在,即6.000000,故选择B选项。

  • 第21题:

    下列程序语句中,不正确的是______。

    A.maia() { float a,b,c; scanf("%f,%f",&a,&b); c=add(a,b); …… } int add(float x,float y) {……}

    B.main() { float a,b,c; scanf("%f,%f",&a,&b); c=add(a,b); …… } float add(float x,float y) {……}

    C.float add() maia() { float a,b,c; scanf("%f,%f",&a,&b); c=add(a,b); …… } float add(float x,float y) {……}

    D.float add(float x, float y) {……} main() { float a,b,c; scanf("%f,%f",&a,&b); c=add(a, b); …… }


    正确答案:B

  • 第22题:

    若a是float型变量,b是unsigned型变量,以下输入语句中合法的是().

    • A、scanf("%6.2f%d",&a,&b);
    • B、scanf("%f%n",&a,&b);
    • C、scanf("%f%3o",&a,&b);
    • D、scanf("%f%f",&a,&b);

    正确答案:C

  • 第23题:

    若有定义和语句:  int a;char c;float f;scanf("%d,%c,%f",&a,&c,&f);  若通过键盘输入:  10,A,12.5,则a=10,c=’A’,f=12.5.


    正确答案:正确