C语言问题,初学者不懂,希望详细解释

2025-02-23 09:15:43
推荐回答(6个)
回答1:

++是加1运算符,放在变量的前或后有不同意思。
++i是先将i的值加1,再将加1后的值用于运算。
j++是用j的值进行运算,运算结束后将j的值加1。

比如这里m=++i; m就等于i加1后的值,是9
n=j++; n就等于j原来的值,是10

回答2:

这个程序主要是想解释一下i++和++i的区别。
i++是先赋值再加1,++i是先加1再赋值。
运行m=++i后,i先加1,i值变为9,然后再赋值给m,即m=9;
运行n=j++后,j先赋值给n,即n=10,然后j的值再加1,j值变为11.

回答3:

m=++i的意思就是m=i+1,i=i+1;
n=j++的意思就是n=j,j=j+1;
前缀自加运算符是自身加一后再赋给左值,就像第一个,后缀自加运算符就是先将自身的值赋给左值,然后自身再加一。。。所谓左值就是赋值符左边的变量,右边的变量称右值。。。

回答4:

程序是定义4个整形变量i. j. m. n. 对i j 赋值8和9,然后是++i对先对i加1,然后赋值给m这时候m为10,然后下一行的赋值是j赋值给n,这时n为为10,然后j在加1,j为11。最后输出这4个数。

回答5:

这个其实就是个++运算符的问题,++放在前面就是先给i加一了,放后面是+了,i的值还没有变;--运算符同样的道理。

回答6:

m=++i;是指先让i自加1,然后把i的值赋给m。n=j++;则是先把j 的值赋给n,然后j 自加1。
这个程序的运行结果应该是i=9,j=11,m=9,n=10.