程序运行输出结果是main(){char c; int n=100;float f=10; double x;x=f*=n/=(c=50);printf("%d %f\n",n,x);}求详解为什么x=20.000000而不是20.00

来源:学生作业帮助网 编辑:作业帮 时间:2024/12/02 21:05:15
程序运行输出结果是main(){char c; int n=100;float f=10; double x;x=f*=n/=(c=50);printf(
x͑JA_eUv['f][l\6 $?C "" ef-9*AIt\99c&-WuaǓiԉ//`%Uv&ʓ"x]MPtJrŽla f4&V\SyOI$s(mJ0e|7ta}u?cGUNX)]5FD@SXM; p]J4sAjKNE]~۠o 6lŧCKb˳~5

程序运行输出结果是main(){char c; int n=100;float f=10; double x;x=f*=n/=(c=50);printf("%d %f\n",n,x);}求详解为什么x=20.000000而不是20.00
程序运行输出结果是
main()
{
char c; int n=100;
float f=10; double x;
x=f*=n/=(c=50);
printf("%d %f\n",n,x);
}求详解
为什么x=20.000000而不是20.00

程序运行输出结果是main(){char c; int n=100;float f=10; double x;x=f*=n/=(c=50);printf("%d %f\n",n,x);}求详解为什么x=20.000000而不是20.00
多个赋值从右向左,首先c=50,然后n/=c,即n=n/c=100/50=2,然后f*=n,即f=f*n=10*2=20.0,然后x=f=20.0
结果是输出n为2,x为20.000000
默认6位小数