rprt.net
当前位置:首页 >> #inCluDE<stDio.h> voiD mAin() { int x=5,y=6;... >>

#inCluDE<stDio.h> voiD mAin() { int x=5,y=6;...

#include<stdio.h> void main() { float x=5,y=6; float a; a=x+y; printf("%f\n",a);//%d是输出整型数据,a是float浮点型的,要用f }

程序是顺序执行的在上面 对a x y值改变了 就会影响下面所以 不会回到最初值 而是继续的比如 经过x=y++; x=6了下面的y=++x; 就要用x=6运算 得到y=7

您好,很高兴能为您解决问题.#include <stdio.h> void main () { int a = 5, b = 6; // a = 5, b = 6 int c = b++; // c = b++ = 6 (这时c是7, b是7) c += (a++) * b; // c += (a++) * b 也就是 // c = c + (a++) * b 也就是 // c = c + 5 * 7 (这时a是6) // c = c + 35 // c = 6 + 35 // c = 41 printf ("%d %d %d", a, b, c); // 这时a是6, b是7, c是41 }希望我的解答能帮到您,望采纳!

不用排序也可以的 #include&lt;stdio.h&gt; void main() { int x=0,y=0,i,k;//初始化x(存储最大值)和y(存储第二大值),理论上应该初始化为最小值,这里只是作示例,就初始化为0 int a[]={1,6,9,0,5};//作输入的数,运行后应该输出为6 for(i=0;i&lt

s=1*x[0]*x[1]*x[2]=1*5*6*7=210

这实际上根编辑器有关的,大部分编辑器会认为结果是10,先计算n++,这个运算完n的值是6,但n++是先使用后加1(和++n不同),所以相当于x=x+(n++),既x=5+5=10,明白?

编译器不同是有点差异的,如果非要一个解释,那我只能说你这个编译器的printf函数输出也是有优先级的,它先执行了x/=2这一步,再执行x+y这一步,最后才把值打印出来.

(x+=x++,x+8,++x) 逗号语句,【这里不等价于:x=x+(x++,x+8,++x)】,应该和编译器有关吧!先算的x++,x+8,++x,得x=7,然后x=5+7,x就成了12了.最后y=2+12=14

你好! 因为if是一个判断语句,里面的表达值要么为真,要么为假,如果为真,则执行printf("*"); 如果为假,则执行printf("#"); ,从上面看x=y-4,是一个赋值语句,y=5,5-4=1,把1赋值给x,则表达式x=y-4,永远为真,则执行printf("*"); 你不信的话可以把x=y-5试试,它一定执行printf("#"); 解答完毕,谢谢!还有什么不明白的可以百度HI我!保证让你明白为止.

"i++==5" :i=5,i+1=6,输出i++,也就是6."++j==7" :j=7,j+1=8,输出j,也就是7."k++==7":k=7,k+1=8,输出k++,也就是8.i++==5&&(++j==7||k++==7),k++!=8所以k还是等于原先的7.最后输出的结果是i++ j k 也就是677 对吗?

相关文档
网站首页 | 网站地图
All rights reserved Powered by www.rprt.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com