main() {int a=10,b=20,c=30,d; d=++a=20||c++; printf("%d,%d,%d,%d\n",a,b,c,d); }C++初学,

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/29 20:51:01
main() {int a=10,b=20,c=30,d; d=++a=20||c++; printf(

main() {int a=10,b=20,c=30,d; d=++a=20||c++; printf("%d,%d,%d,%d\n",a,b,c,d); }C++初学,
main() {int a=10,b=20,c=30,d; d=++a=20||c++; printf("%d,%d,%d,%d\n",a,b,c,d); }
C++初学,

main() {int a=10,b=20,c=30,d; d=++a=20||c++; printf("%d,%d,%d,%d\n",a,b,c,d); }C++初学,
最后结果:11,19,30,1
原因:
d=++a=20||c++;
根据优先级加上括号就成了这样
d=(((++a) =20)) || (c++);
首先C的逻辑或运算时有个短路计算的规则,即||左边为真时不会进行右边的计算.
((++a) =20成立,比较完成后进行b的自减运算,完成时b=19,此时(((++a) =20)) 的值为真,不再进行c的运算.所以c的值不会变c=30,d为真即d=1

#include int b=2; int fun(int *k) {b=*k+b;return(b);} main() {int a[10]={1,2,3,4,5,6,7,8}, #include int b=2; int fun(int*k) { b=*k+b;return(b);} main() {int a[10]={1,2,3,4,5,6,7,8}#include int b=2; int fun(int*k) { b=*k+b;return(b);} main() {int a[10]={1,2,3,4,5,6,7,8},i;for(i=2;i void fun(int a,int b) { int t; t=a;a=b;b=t; } main()void fun(int a,int b){ int t; t=a;a=b;b=t; } main() { int c[10]={1,2,3,4,5,6,7,8,9,0}.i; for(i=0;i .main() { int a=1,b=10; do {b-=a;a++;}while(b-- #include void fun(int a, int b) { int t; t=a; a=b; b=t;main() { int c[10]={1,2,3,4,5,6,7,8,9,0), i; for (i=0; i main() { int a,b,c; a=1;b=2;c=3; if(a int a=2; int f(int a); {return (a)++;} main() {int s=0; {int a=5; s+=f(&&a);} s+=f(&&a); printf(%da=2;int f(int a);{return (a)++;}main(){int s=0;{int a=5;s+=f(&&a);}s+=f(&&a);printf(%d ,s);}执行的输出结果是()A 10 B 9 C 7 D 8 #include stdio.h void fun(int a,int b) { int t; t=a,a=b,b=t; } main() { int c[10]={1,2,3,4,5,6,7#include stdio.hvoid fun(int a,int b){int t;t=a,a=b,b=t;}main(){int c[10]={1,2,3,4,5,6,7,8,9,0},i;for(i=0;i int b=2;int fun(int*k) {b=*k=b;return (b);} main() {int a[10]={1,2,3,4,5,6,7,8} for (i=2;i #include int a=3,b=5; max (int a,int b) {int c; c=a>b?a:b; return (c); } void main() {int 下列程序的输出结果是 int b=2; int func(int *a) { b += *a; return(b);} main() A4 B6 C8 D10 main() {int m[10],a;for(a=0,a #include int f1(int a,int b)15,9 { int c; c=b%2; return a+c; }int f2(int a,int b){ int c;a+=a;b+=b;c=f1(a+b=14,++b9);return c;}void main(){ int a=3,b=4;cout main() { int a=2,b=-1,c=2; if(a main() { int a=1,b=2,c=2,t; while(a #include main( ) { int a=1,b=2; for(;a #include void main() { int a=3,b=2,c=1; int x=10,y=20; if(a #include func(int a,int b){int c; c=a+b;returnc;}main(){intX=6,r;r#include func(int a,int b){int c; c=a+b;returnc;}main(){int x= 6,r;r = func (x,x+=2);printf (%d ,r);}A.14 B.15 C.16 D.17