#include <stdio.h> int main(void){ int a,x,y; a=10,x=5,y=6; a+=a*=6; printf("The first opera

#include <stdio.h>
int main(void){
int a,x,y;
a=10,x=5,y=6;
a+=a*=6;
printf("The first operation,a is %d.\n",a);
x=y++;
printf("The second operation,x is %d,y is %d.\n",x,y);
y=++x;
printf("The third operation,x is %d,y is %d.\n",x,y);
a=x+++y;
printf("The fourth operaton,a is %d,x is %d,y is %d\n",a,x,y);
return 0;

是分布运算的吗,就是说a.x.y的值在之后每一次运算都会要回到最初赋值是的值运算吧。
还是说每一次a.x.y的值都会要变化

程序是顺序执行的
在上面 对a x y值改变了 就会影响下面
所以 不会回到最初值
而是继续的

比如 经过
x=y++; x=6了

下面的
y=++x; 就要用x=6运算 得到y=7追问

你和楼下的有着截然不同的看法😃

追答

角度不同
我说的 是一次执行过程
他说的 是每次执行
我回答的是你的问题
针对每次运算 而不是每次整个的运行。

追问

就是说程序按照顺序运算之后a.x.y的值就改变了,之后他们每次运算的值就得按照上一步运算的值来运算了吗

追答

是的
每次 按照上一步
每一步 都会影响下一步。

温馨提示:内容为网友见解,仅供参考
第1个回答  2016-11-06
程序每次执行,都是从第一句开始,所以每次运行的结果都是一样的。追问

你和楼上的有截然不同的看法😃

...int a,x,y; a=10,x=5,y=6; a+=a*=6; printf("The first opera_百度知...
x=y++; x=6了 下面的 y=++x; 就要用x=6运算 得到y=7

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

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

#include<stdio.h> void main() { int x=5,y=6; float a; a=x\/y...
5\/6=0,因为a是实型数,赋值时补零,变成 0.000000。5.0\/6=0.833333,赋给a。

#include<stdio.h> main() {int x=3,y=
自增与自减运算符可在变量的左边(前缀)与右边(后缀),运算规则教材上有的,手机打字很麻烦

#include "Stdio.h" int main(void) { float a; a=1234567.3; printf...
我刚才看了一下我linux下的编译器也是输出6位,后来我看了一下百度了一下printf,在百科中看到%f 默认精度为6 而且我认为浮点型的精度是7 指的有效位是7,而不是小数点后面7为也就是加上小数点前面一位.

#include main() { int x=5,y=5; printf("%d,
include <stdio.h>int main(void){int x=5,y=5;printf("%d,%d,%d,%d",x,y,--x+(--x),y--+(y--));\/\/按优先级运算:\/\/先计算 --x + ( --x ) ,即执行,先减,后加操作。 --x 和 ( --x ) ,其实是一样的。\/\/即,原 x=5 ,执行 --x 后,x=4 ,再执行 (--...

...后的输出是()#include<stdio.h> int main(void) {
选C吧。这刚开始x=3.然后进入循环这是x=x-3输出0然后因为x=0所以!x为真所以继续执行循环这时x=-3输出因为x=-3所以!x为0(非真即为假).所以这时候退出循环程序结束

#include<stdio.h> void main( ) { int x =5, y= 10; y++ ; x + =...
【结果】:x=0,y=12第一次:执行前x=30,y=0,满足循环条件;运算结束x=15,y=2;循环结束x=14,y=3第二次:执行前x=14,y=3,满足循环条件;运算结束x=7,y=5;循环结束x=6,y=6第三次:执行前x=6,y=6,虽然x

#include<stdio.h> main() {int a,y; a=10;y=0; do{a+=2;y+=a; pri...
答案应该是12 12 16 28 认真看,最初a=10,y=0,a=a+2=12,y=y+a=12,这是最初的输出值,while后的()中的a=14并不是a==14,这要分清,前者是吧a赋值14,而14非零,继续重复循环,后者是判断条件。在之后 a=14带入循环,a=16,y=28,if判断条件满足,进行if程序,break跳出循环...

相似回答