汇编语言程序设计

设floatx,由键盘输入:12.45,能正确读入数据的输入语句是()。A、scanf("%5f",&x)B、scanf("%5d",&x)C、scanf("%f",x)D、scanf("%s",&x)

题目

设floatx,由键盘输入:12.45,能正确读入数据的输入语句是()。

  • A、scanf("%5f",&x)
  • B、scanf("%5d",&x)
  • C、scanf("%f",x)
  • D、scanf("%s",&x)
参考答案和解析
正确答案:A
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

已知:int x,y;double z;则以下语句中错误的函数调用是( )。A)scanf("%d,%1x,%1e",&x,&y,&z); B)scanf("%1d*%d&1f",&x,&y,&z);C)scanf("%x%*d%o",&x,&y); D)scanf("%x%o%6.2f",&x,&y,&z);


正确答案:B
B项的格式应该为scanf("%1d*%d%1f",&x,&y,&z);

第2题:

设有定义:double x[lO],*p=x;,以下能给数组x下标为6的元素读人数据的正确语句是

A.scanf(“%f”,&x[6]);

B.scanf(“%If”,*(x+6));

C.scanf(“%lf”,p+6);

D.scanf(“%lf”,p[6]);


正确答案:C

第3题:

若有说明语句 : double *p,a; 则能通过 scanf 语句正确给输入项读入数据的程序段是A)*p=&am

若有说明语句 : double *p,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
(24)D) 解析 : p=&a 表示将变量 a 的地址送给指针 p; scanf( “ %lf ” ,p) 表示用键盘输入的数给变量 p 地址中。

第4题:

下列if语句非法的是( )

A.if(a=B) x=1;

B.if(!3.9)

C.if('a'&&x==y) y++;

D.if(x>y) scanf("%f",&y) else scanf("%f",&x);


正确答案:D

第5题:

若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

第6题:

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

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

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

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

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


正确答案:D
解析:*p间接引用指针指向的变量,因此“(*p)=&a”不对。scanf()的输入变量必须为地址,因此C是错误的。

第7题:

设有定义:int A,*pA=&A;,以下scanf语句中能正确为变量A读入数据的是 ______。

A.scanf ("%d",pA) ;

B.scanf("%d",A) ;

C.scanf("%d",apA) ;

D.scanf("%d",*pA) ;


正确答案:A
解析:选项B中不是变量A的地址,错误;选项C是指针pA的地址,错误;选项D中*pA表示变量A的值,错误。

第8题:

(16)若有定义语句:double x,y,*px,*py,执行了px=&x, py=&y;之后,正确的输入语句是

A)scanf(“%f%f”,x,y); B) scanf(“%f%f”,&x,&y);

C) scanf(“%lf%le”,px,py); D) scanf(“%lf%lf”,x,y);


正确答案:C

第9题:

若有定义语句:doub1e x,y,*px,*py;执行了px=&x;py=&y;之后,正确的输入语句是______。

A.scanf("%f%f"&x,&y);

B.scanf("%f%f"&x,&y);

C.scanf("%1f%lf",px,y);

D.scanf("%lf%lf",x,y);


正确答案:C
解析:scanf函数的—般调用形式为:
  scanf(格式控制输入项1,输入项2,…)
  选项B中,&x前面少了逗号,因此选项B错误。scanf函数要求输入项必须是地址表达式,因此选项A、D错误,又因为变量x和变量y是双精度型的,因此在输入时必须以f(lf)或e(le)的形式,因此选项C是正确的。

第10题:

若有说明语句:double*p,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型数据,格式控制符必须用%1f(或%le).否则,数据不能正确输入。所以选项D)为正确答案。

更多相关问题