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,输出结果是: 展开
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,输出结果是: 展开
1个回答
展开全部
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;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询