设有定义:inta;floatb;,执行scanf("%2d%f",a,b);语句时,若从键盘输入:876543.0,a和b的值分别是()A、876和543.0B、87和6.0C、87和543.0D、76和543.0

题目

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

  • A、876和543.0
  • B、87和6.0
  • C、87和543.0
  • D、76和543.0
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

已知i、j、k为整型变量,若从键盘输入1,2,3<回车>,使i的值为1、j的值为2、k的值为3,以下选项中正确的

已知i、j、k为整型变量,若从键盘输入1,2,3<回车>,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是( )。

A.scanf("%2d%2d%2d",&i,&j,&k);

B.scanf("%d %d %d",&i,&j,&k);

C.scanf("%d,%d,%d",&i,&j,&k);

D.scanf("i=%d,j=%d,k=%d",&i,&j,&k);


正确答案:C
解析:使用scanf()函数时,要求除格式控制符以外的字符都要原样输入,“,”为非格式符,要原样输入。选项A,输入格式描述为“%2d%2d%2d”,意思是输入一个长度为6的数字串,scanf()将每两个为一组读入3个变量中,不满足键盘输入1,2,3的条件,故A错误;选项B中,输入格式描述符为“%d%d%d”,输入要用空格隔开,故错误;选项D中,输入格式描述符为“i=%d,j=%d,k=%d”,应该从键盘输入i=1,j=2,k=3,才能使得i,j,k的值为1,2,3,故选项D错误。4个选项中C正确。

第2题:

若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

第3题:

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

A)876 和 543.000000

B)87 和 6.000000

C)87 和 543.000000

D)76 和 543.000000


正确答案:B
( 18 )
答案 B
解析 : 本题考查了 scanf 的附加格式说明字符 , 输入格式字符 %2d%f 表示 a 输入的值为 2 列的十进制整数,即 87 ,然后将紧接着的 6 赋值给 b, 因此 b 的单值精度数位 6 ,即 6,000000 。故本题的答案为 B 。

第4题:

请读程序:includemain(){inta;floatb,c:scanf("%2d%3f%4f',&a,&b,&c);pri

请读程序: #include<stdio.h> main() { inta;floatb,c: scanf("%2d%3f%4f',&a,&b,&c); printf("\na=%d,b=%f,c=%f\n".a,b,c); } 若运行时从键盘上输入9876543210,则上面程序的输出结果是______。

A.a=98,b=765,c=4321

B.a=10,b=432,c=8765

C.a=98,b=765.000000,c=4321.000000

D.a=98,b=765.0,c=4321.0


正确答案:C
解析:scanf()把用户从键盘录入的数字的第1、2位存入整型变量a;把第3、4、5位存入单精度实型变量b,把第6,7、8,9位存入单精度实型变量c,用户录入的第10位被scanf()遗弃。这时变量a、b、c的值分别为:98、765.000000、4321.000000。

第5题:

若有以下程序: inta=1,b=1 a=a^b; b=b^a 则执行以上语句后a和b的值分别是( )。A.a=1,b=2

若有以下程序: inta=1,b=1 a=a^b; b=b^a 则执行以上语句后a和b的值分别是( )。

A.a=1,b=2

B.a=3,b=l

C.a=3,b=2

D.a=2,b=l


正确答案:B
本题考查按位异或的用法。按位异或运算的规则是:两个运算数的相应二进制位相同,则结果为0,相异则结果为1。b=2的二进制为00000010,a=1的二进制为00000001,a=a^b一00000011,转化为十进制后为3,b=b^a=00000010^00000011=00000001,即1。

第6题:

已知i、j、k为iht型变量,若从键盘输入:1,2,3<回车>,使i的值为1、j的值为2、k的值为3,以下选项中正确

已知i、j、k为iht型变量,若从键盘输入:1,2,3<回车>,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是 ______。

A.scanf("%d %d %d",&i,&j,&k);

B.scanf("%d,%d,&d",&i,&i,&k);

C.scanf("%2d %2d %2d",&i,&j,&k);

D.scanf("i=%d,j=%d,k=%d",&i,&j,&k);


正确答案:A
解析:scanf函数中格式控制后面应为变量地址列表,因此选项C和选项D都错误,选项B中“&d”是指针变量d的地址,与题目不符。由题目可知指针变量d中存放的是变量c的地址,所以正确答案为选项A。

第7题:

已知i、j、k为int型变量,若从键盘输入:1,2,3<回车>,使i的值为1、j的值为2、k的值为3,以下选项中正确

已知i、j、k为int型变量,若从键盘输入:1,2,3<回车>,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是

A.scanf(“%2d%2d%2d”,&i,&j,&k);

B.scanf(“%d%d%d”,&i,&j,&k);

C.scant(“%d,%d,%d”,&i,&j,&k);

D.scanf(“i=%d,j=%d,k=%d”,&i,&j,&k);


正确答案:C
解析:输入函数scanf使用该语句时,要求除格式控制符以外的字符都要原样输入,“,”为非格式符,要原样输入。选项A,输入格式描述为“%2d%2d%2d”,输入要用空格隔开,不满足键盘输入1,2,3的条件;选项B中,输入格式描述符为“%d %。 d %d”,输入也要用空格隔开;选项D中,输入格式描述符为“i=%d,j=%d,k=%d”,应该从键盘输入i=1,j=2,k=3,才能使得i,j,k的值为1,2,3。

第8题:

设有定义:inta=0,b=5,c;执行语句c=(a=b)||++a&&b++后,a、b、c的值分别是()。

A、5,5,1

B、4,6,1

C、1,6,1

D、1,5,0


参考答案:A

第9题:

已知i,j,k为int型变量,若从键盘输入:1,2,3,使i的值为1,j的值为2,k的值为3,以下选项中正确的输入语句是A.scanf("%2d,%2d,%2d", i, j, k); B.scanf("%d %d %d",&i,&j,&k);C.scanf("%d,%d,%d",&i,&j,&k); D.scanf("i=%d,j=%d,k=%d",&i,&j,&k);


正确答案:C
本题主要考查scanf输入语句及其格式。在本题中的四个选项中,分别用不同的格式试图从键盘输入数据。
在选项A中,给出的输入格式是“%2d,%2d,%2d”,表示输入的数据中间用逗号隔开,而且其输入的宽度为2,即可以输入一个两位数,如果输入的位数小于2,则左边补空格。在其输出列表中,表示方式也不对,其他三项是正确的。
在选项B中,给出的输入格式是“%d %d %d”,仅表示输入的数据中间用空格隔开。
在选项C中,给出的输入格式是“%d,%d,%d”,仅表示输入的数据中间用逗号隔开,与题目给出的要求一致,为正确答案。
在选项D中,给出的输入格式是“i=%d,j=%d,k=%d”,表示输入的数据中间不仅用逗号隔开,还需要如“i=”的说明符。

第10题:

设有定义:

则a和b的值分别是( )。

A.87和6.0

B.876和543.0

C.87和543.0

D.76和543.0


正确答案:A
在格式字符前加入一个整数可以指定输入数据所占的宽度,所以赋值时会将87赋给int型变量a,把6.0赋给im型float型变量b。

更多相关问题