none
问个算法问题 RRS feed

  • 问题

  •  int m=0;
     for(int i=1;i<=100;i++)
     {
      if(i%2>0)m+=i;
      else m-=i;
      printf("%d \n",m);
     }

    有没有更好的写法

    2012年12月26日 3:27

答案

  • for(int i=1;i<=50;i++)
    {
      printf("%d\n-%d\n", i, i);
    }

    -------------------------

    this ??


    Visual C++ enthusiast, like network programming and driver development. At present is being engaged in the WinCE/Windows Mobile platform embedded development.

    • 已标记为答案 van_w1y 2012年12月27日 3:24
    2012年12月26日 6:25
    版主

全部回复

  • for(int i=1;i<=50;i++)
    {
      printf("%d\n-%d\n", i, i);
    }

    -------------------------

    this ??


    Visual C++ enthusiast, like network programming and driver development. At present is being engaged in the WinCE/Windows Mobile platform embedded development.

    • 已标记为答案 van_w1y 2012年12月27日 3:24
    2012年12月26日 6:25
    版主
  • for(int i=1;i<=50;i++)
    {
      printf("%d\n-%d\n", i, i);
    }

    这样其实是自己做了计算过程,再让机器把计算结果显示出来。(这样说也许有些吹毛求疵?)

    另外,这篇文章如果有兴趣可以看一下:for循环中i++与++i的效率探究


    Damon Zheng
    MSDN Community Support | Feedback to us
    Develop and promote your apps in Windows Store
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    2012年12月31日 8:43
    版主