有以下程序 main() {int a; char c=10; float f=100.0; double x; a=f/=c*(x=6.5); printf("%d %d %3.1f %3.1f\n",

admin2010-01-10  16

问题 有以下程序    main()    {int  a;    char  c=10;    float  f=100.0;  double  x;    a=f/=c*(x=6.5);    printf("%d  %d  %3.1f  %3.1f\n",a,c,f,x);}    程序运行后的输出结果是

选项 A、1  65  1  6.5
B、1  65  1.5  6.5
C、1  65  1.0 6.5
D、2 65  1.5  6.5

答案2

解析 主函数中先定义了一个整型变量a,一个字符变量c并赋初值10,一个浮点型变量f并赋初值100.00和一个double型x,接着执行“a=f/=c*=(x=6.5)”,该语句从右向左计算,先把6.5赋值给x(该括号表达式的值也为6.5),此时x的值的变为6.5,然后执行“c*=(x=6.5)”相当于执行“c=c*(x=6.5)”,此时c的值为65,接着向左执行“f/=c*=(x=6.5)”,语句相当于执行“f=f/c”接着向最右边执行“a=f,由于a是整型变量,所以a最后取f的整数部分为1。程序最后输出的a、c、f和x的值分别为1、 65、1.5、6.5。
转载请注明原文地址:https://kaotiyun.com/show/xXWp777K
0

最新回复(0)