<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > DEV C++九宮格的解法源程序

          DEV C++九宮格的解法源程序

          作者: 時間:2016-12-01 來源:網(wǎng)絡(luò) 收藏
          下面是源碼VS2010壞了還沒來得及重裝用DEV-C++++弄的,注釋我寫的很詳細(xì),因為E文很爛所以變量名很有中國特色,求理解.................

          #include
          #include
          ////////////////////////////////////////////////////////////////////////////////
          int main(int argc, char *argv[])
          {
          int x=0; //行
          int y=0; //列
          int q=1; //循環(huán)標(biāo)記
          int sz;
          int shuru; //輸入九宮格的行列數(shù)必須為>3的奇數(shù)
          //判斷輸入值是否正確
          for(;q;)
          {
          printf("請輸入要生成的九宮格的行列數(shù):");
          scanf("%d",&shuru);
          if(shuru<=3||shuru>=100) printf("輸入的行列數(shù)過大或過小,請重新輸入!");
          else if(shuru%2==0) printf("您輸入的不是一個奇數(shù),請輸入一個奇數(shù)!");
          else q=0;
          }
          int Gsz[shuru][shuru]; //九宮格布局?jǐn)?shù)組
          for(y=0;y for(x=0;x Gsz[y][x]=0; //九宮格布局?jǐn)?shù)組初始化
          ///////////////////////////////////////////////////////////////////////////////
          x=0;
          y=0;
          int s=1;
          //第一步
          //首先在第一行中間寫下1
          x=(shuru-1)/2;
          Gsz[y][x]=s;
          s++;
          for(q=1;q==1;)
          {
          //程序關(guān)鍵轉(zhuǎn)向處
          if(y==0&&x==(shuru-1))
          {
          y++;
          Gsz[y][x]=s;
          s++;
          y=0;
          x=0;
          Gsz[y][x]=s;
          s++;
          q=0;
          }else
          {
          //然后向下移動到最底下,向右移一格寫
          y=shuru-1;
          x++;
          Gsz[y][x]=s;
          s++;
          //然后一下向右上方寫到最邊處
          for(;x<(shuru-1);)
          {
          y--;
          x++;
          Gsz[y][x]=s;
          s++;
          }
          //然后平移到最左邊,向上移動一格寫
          y--;
          x=0;
          Gsz[y][x]=s;
          s++;
          //向右上方寫。遇到數(shù)字后向下寫
          y--;
          x++;
          for(;Gsz[y][x]==0;)
          {
          Gsz[y][x]=s;
          s++;
          y--;
          x++;
          }
          y++;x--; //還原循環(huán)最后一次的無效數(shù)值變化
          //向下寫一格
          y++;
          Gsz[y][x]=s;
          s++;
          //繼續(xù)向右上寫直到最邊處
          for(;y>0;)
          {
          y--;
          x++;
          Gsz[y][x]=s;
          s++;
          }
          }
          }
          //第二步
          for(;s<(shuru*shuru);)
          {
          //向下移動到最底下,向右移一格寫
          y=shuru-1;
          x++;
          Gsz[y][x]=s;
          s++;
          //向右上方寫。遇到數(shù)字后向下寫
          y--;
          x++;
          for(;Gsz[y][x]==0;)
          {
          Gsz[y][x]=s;
          s++;
          y--;
          x++;
          }
          y++;x--; //還原循環(huán)最后一次的無效數(shù)值變化
          //向下寫一格
          y++;
          Gsz[y][x]=s;
          s++;
          //繼續(xù)向右上寫直到最邊處
          for(;x<(shuru-1);)
          {
          y--;
          x++;
          Gsz[y][x]=s;
          s++;
          }
          //然后平移到最左邊,向上移動一格寫
          y--;
          x=0;
          Gsz[y][x]=s;
          s++;
          //繼續(xù)向右上寫直到最邊處
          for(;y>0;)
          {
          y--;
          x++;
          Gsz[y][x]=s;
          s++;
          }
          }
          Gsz[(shuru-1)][(shuru-1)/2]=s; //寫最后一個數(shù)值
          ////////////////////////////////////////////////////////////////////////////////
          int ax=0;
          //屏幕輸出
          for(y=0;y {
          for(x=0;x {
          printf("%d",Gsz[y][x]);
          if(Gsz[y][x]<=9) printf(" ");
          else printf(" ");
          }
          for(q=0;q printf(" 此列和為:%d",ax );ax=0;
          printf("");
          }
          for(x=0,y=0,ax=0;y printf("斜角1的和為:%d",ax);
          for(x=shuru-1,y=0,ax=0;y printf("斜角2的和為:%d",ax);
          printf("");
          system("PAUSE");
          return 0;
          }

          本文引用地址:http://www.ex-cimer.com/article/201612/324261.htm


          關(guān)鍵詞: DEVC++九宮格解法源程

          評論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();