int a;float b,c; scanf("%2d%3f%4f",&a,&b,&c); printf("\na=%d,b=%d,c=%f\n",a,b,c);

Aa=98,b=765,c=4321.000000Ba=98,b=0,c=0.000000Ca=98,b=765.000000,c=4321.000000Da=98,b=... A a=98,b=765,c=4321.000000
B a=98,b=0,c=0.000000
C a=98,b=765.000000,c=4321.000000
D a=98,b=765.0,c=4321.0
答案是B,能分别解释a,b,c为什么是这样的值吗?
输入9876543210,输出结果是:
展开
 我来答
听不清啊
高粉答主

2017-03-01 · 说的都是干货,快来关注
知道顶级答主
回答量:7.8万
采纳率:89%
帮助的人:1.9亿
展开全部

a的输出应该是没有疑问的。问题是b读到的是765.0(实数),但是以%d格式输出就出错了。

必须要以%f格式输出b的值。如果要以整数形式输出,可以用 %.0f 输出b的值的。

b的格式改正后,c的输出也正常了。

#include<stdio.h

int main() 

{int a;float b,c; 

scanf("%2d%3f%4f",&a,&b,&c); 

printf("1:\na=%d,c=%f\n",a,c);

printf("2:\na=%d,b=%d,c=%f\n",a,b,c);

printf("3:\na=%d,b=%.0f,c=%f\n",a,b,c);

return 0;

}

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式