一次去面试,考了几道++i,i++的问题,没全答对,感到很惭愧。下面写几条代码,大家分析一个结果是多少。如初始条件:
int i=0;
int j=0;
int a[50];下面语句互相独立。1. a[i++]=i; 
2.  a[i++]=i++;
3.  a[i++]=++i;
4.  a[++i]=i++;
5.  a[++i]=++i;
6.  a[i++]=++i + ++i;
7.  a[i++]=++i + j + ++i;
8.  a[++i]=++i + 2 ++i+ i ;
9.  a[++i]=++i + j ++ i+ ++i;10.  a[++i,++i]=++i + 2 ++i+ i ;
11.  a[++i,++i]=++i + j ++i+ i ;
11.  a[++i,++i,j=i]=++i + ++j ++i+ ++i ;上面各条语句,各对第几个元素赋值,结果是多少?我也不知道结果,随便写的,可能因编译不同而不同,无聊的题,你无聊时做一下,可能在某个无聊的面试中能用上...

解决方案 »

  1.   

    最后一句写错了:a[++i,++i,j=i]=++i + ++j + ++i + ++i ;
      

  2.   

    楼主,你的空格会产生误导作用哦,还是下面这样更无聊:)
    1. a[i++]=i; 
    2.  a[i++]=i++;
    3.  a[i++]=++i;
    4.  a[++i]=i++;
    5.  a[++i]=++i;
    6.  a[i++]=++i+++i;
    7.  a[i++]=++i+j+++i;
    8.  a[++i]=++i+2++i+i ;
    9.  a[++i]=++i+j++i+++i;
    10.  a[++i,++i]=++i+2++i+i ;
    11.  a[++i,++i]=++i+j++i+i ;
    11.  a[++i,++i,j=i]=++i+++j++i+++i ;让电脑死机去吧
      

  3.   

    1.a[0]=0
    2.a[1]=0
    3.a[1]=1真是看了头晕,今天上海还37度!不知道对不对?
      

  4.   

    有人说要加括号啊,不知道这样加还有没有人看得懂
    11.  a[((++(i)),((++(i)),((j)=(i))))]=(((++(i))+(++((j))))+((++(i))+(++(i))));
    呵呵
      

  5.   

    这种题没有意义,
    用时拿到机子上跑一遍不就知道了。
    就向当年爱因斯坦说的,
    凡是书上有的我从不记在脑子里。
    所以凡是机器能做的我们不必记在脑子里,
    但要知道怎样去让机器去做。
    如果有公司出这种面试题,我的就把diwaa(地娃) 说的写在考卷上。