E81086713E446D36F62B2AA2A3502B5EB155

          Java雜家

          雜七雜八。。。一家之言

          BlogJava 首頁 新隨筆 聯系 聚合 管理
            40 Posts :: 1 Stories :: 174 Comments :: 0 Trackbacks
          寫一個函數,輸出前N個數(從7開始),這N個數滿足如下3個條件中的任意一個
          1.整出7
          2.各位上的數字之和整除7,(比如34)
          3.任意位上包含數字7


          附我的代碼:
          void printN(int n)
          {

              
              
          int c=0;
              
          int i=7;
              
          do 
              {
                  
          if(i%7 ==0)
                  {
                      printf(
          "%d\n",i);
                      c
          ++;
                  }
                  
          else
                  {
                      
          int j=i%10;
                      
          int k=j;
                      
          int s=k;
                      
          int p=10;
                      
          while(k<i)
                      {

                          
          if(j==7)
                          {
                              printf(
          "%d\n",i);
                              s
          =0;
                              c
          ++;
                              
          break;

                          }
                          
          else
                          {
                              j
          =((i-k)/p)%10;
                              s
          +=j;
                              k
          =j*p+k;
                              p
          *=10;


                          }
                      }
                      
          if(s&&s%7==0)
                      {


                          printf(
          "%d\n",i);
                          c
          ++;
                      }
                      

                  }
                  i
          ++;
              } 
          while (c<n);
          }


          posted on 2008-12-10 21:44 DoubleH 閱讀(3235) 評論(8)  編輯  收藏

          Feedback

          # re: 【分享】今日某公司的電話面試題 2008-12-11 11:16 ANTICPC
          絕望  回復  更多評論
            

          # re: 【分享】今日某公司的電話面試題 2008-12-11 13:50 Always BaNg.
          強,電話寫代碼啊?  回復  更多評論
            

          # re: 【分享】今日某公司的電話面試題 2008-12-12 09:11 congdepeng@hotmail.com
          弱弱的問 不是java寫的吧? 過程話語言寫這個問題還是很簡單的   回復  更多評論
            

          # re: 【分享】今日某公司的電話面試題 2008-12-12 11:22 bad
          i am sure you are poor in java,so you are a newer.  回復  更多評論
            

          # re: 【分享】今日某公司的電話面試題[未登錄] 2008-12-12 13:30 bill
          在java 5中也可以用printf()的 ,可能是他寫C多點哦  回復  更多評論
            

          # re: 【分享】今日某公司的電話面試題 2008-12-16 22:52 小Xiong
          牛! JAVA里面好像不是叫函數吧,應該是叫方法吧!還發現會有printf()。老兄是不是帖子放錯位置了啦!  回復  更多評論
            

          # re: 【分享】今日某公司的電話面試題 2009-01-08 18:47 無韻之殤
          LZ,有錯誤吧……
          輸入printeN(100)輸出:
          7 14 16 17 21 25 27 28 34 35 37 42 43 47 49 52 56 57 59 61 63 67 68 70 77 84 86 87 91 95 97 98 105 106 107 112 115 117 119 124 126 127 133 137 140 142 147 149 151 154 157 158 160 161 167 168 170 171 172 173 174 175 176 177 178 179 182 185 187 189 194 196 197 203 205 207 210 214 217 223 224 227 231 232 237 238 239 241 245 247 248 250 252 257 259 266 267 270 271 272
          (把代碼改成JAVA后的運行的:)
          void printN(int n) {

          int c = 0;
          int i = 7;
          do {
          if (i % 7 == 0) {
          System.out.print(i + " ");
          c++;
          } else {
          int j = i % 10;
          int k = j;
          int s = k;
          int p = 10;
          while (k < i) {

          if (j == 7) {
          System.out.print(i + " ");
          s = 0;
          c++;
          break;

          } else {
          j = ((i - k) / p) % 10;
          s += j;
          k = j * p + k;
          p *= 10;

          }
          }
          if (s != 0 && s % 7 == 0) {

          System.out.print(i + " ");
          c++;
          }

          }
          i++;
          } while (c < n);
          }   回復  更多評論
            

          # re: 【分享】今日某公司的電話面試題 2009-01-09 09:09 無韻之殤
          看來是我理解錯了,應該是輸出N個,不好意思……  回復  更多評論
            

          # # re: 【分享】今日某公司的電話面試題 2009-01-09 10:01 # re: 【分享】今日某公司的電話面試題
          71 72 73……呢?  回復  更多評論
            


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 赤城县| 元朗区| 兴宁市| 共和县| 崇仁县| 增城市| 略阳县| 金阳县| 汉川市| 库尔勒市| 湘西| 东阿县| 丁青县| 铜山县| 乐安县| 达州市| 论坛| 镶黄旗| 石台县| 普陀区| 寻乌县| 灵丘县| 林西县| 石屏县| 班玛县| 夹江县| 株洲县| 万安县| 楚雄市| 青田县| 墨脱县| 巫溪县| 巢湖市| 彭阳县| 建宁县| 灵川县| 探索| 上犹县| 涪陵区| 天柱县| 类乌齐县|