计算机二级

若有说明语句:double*p,a;则通过scanf语句正确给输入项读入数据的程序段是( )。A.*p=&a;scanf(&qu若有说明语句:double*p,a;则通过scanf语句正确给输入项读入数据的程序段是( )。A.*p=&a;scanf("%1f”,p);B.*p=&a;scanf("%f",p);C.p=&a;scanf("%",*p);D.p=&a;scanf("%1f",p);

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

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

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

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

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

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

参考答案和解析
正确答案:D
double*p,a定义了一个指向双精度型的指针变量P和双精度型变量a,p=&a表示将变量a的地址赋给指针变量p;scanf("%If",p)表示用键盘输入的数赋给指针变量P所指向的地址单元中,scanf函数要求在输入double型数据,格式控制符必须用%1f。否则,数据不能正确输入。所以选项D正确。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

若有定义“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”。

第2题:

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

A.6357

B.6135

C.1357

D.691357


正确答案:C
解析: 本题先将指针p指向二维数组ch[2][5],相当于p[0]="1234",p[1]="5678",通过双重for循环,是要将p中的字符隔一个输出一个,通过s=p[i][j]-'0'这条语句是将所要输出的字符转换成相应的十进制数。

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

若有说明,double*m,n;则能通过sCanf语句正确给输入项读人数据的程序段是( )。

A.*m = &n;scanf("%lf",m);

B.m = (double * ) malloc(10);scanf("%f",m);

C.m = &n;scanf("%lf",n);

D.m = &n;scanf("%le",m);


正确答案:D
解析:选项A,*m=&n错误。选项B,输入double型,要用%lf或%le,否则数据不能正常输入。选项C,n是变量,不是指针,scanf("%if",n)错误。

第5题:

若说明int *p,n;则通过语句scanf能够正确读入数据的程序段是

A.p=&n;scanf("%d",&p);

B.p=&n;scanf("%d",*p);

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

D.p=&n;scanf("%d",p);


正确答案: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题:

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

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

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

C.scanf("%lf",&a)

D.scanf("%le",&a);


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

第8题:

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

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

B.p=(long*)malloc(8);scanf("%1d",p);

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

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


正确答案:A

第9题:

若有定义int *p,n;则通过语句scanf能够正确读入数据的程序段是( )。

A.p=&n;scanf("%d",&p);

B.p=&n;scanf("%d",*p);

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

D.p=&n;scanf("%d",p);


正确答案:D
解析:通过定义int*p,p是一个整型指针,p=&n是使p指向变量n,而p是一个指针,输入时不需再用地址运算符。

第10题:

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

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

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

C.seanf("%1f",&a);

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


正确答案:B
本题考查scanf函数的调用形式:scanf(格式字符串,输入项地址表)。“格式字符串”是要输入的变量的格式符;“输入项地址表”是要输入的变量的地址。

更多相关问题