php學習測試題目

來源:互聯網
上載者:User

標籤:bst   pre   計算   長度   地址   str   多少   水仙花   array   

    <?php
    header("content-type:text/html;charset=utf-8");
   /*
    1.銀行給客戶每天萬分之四的利率,本金100萬,存入10年;收入多少()
    $money = 1000000;//固定值
   for($i = 1 ;$i<3650;$i++){
       $money += $money*0.0004;
   }
   echo $money;
   */

   /*
   2.求出1-100所有的素數
   for($i = 1;$i < 100;$i++){
      假設$is_sushu是真
      $is_sushu = true;//設定一個參數flg
      for($j = 2;$j < $i-1;$j++){
       if(($i%$j) == 0){
           $is_sushu = false;
       }
      }
      if($is_sushu){
          echo $i.‘<br/>‘;
      }
  }
   */
  /*
   3.求出1-1000內所用的水仙花數(3位)
   for($i = 100 ;$i <= 1000;$i++){
          
        取出百位,十位,個位
          
        $b = (int)($i/100);
        $s = (int)(($i-$b*100)/10);
        $g = $i - $b*100 - $s*10;
        $res = pow($b,3)+pow($s,3)+pow($g,3);
        if($res == $i){
            echo $i.‘是水仙花數‘.‘<br/>‘;
        }
   }
  */
   /*
   4.輸出一個階乘 //n!=1*2*3*...*n
    function jc($num){
       $res = 1;//設定一個固定值
       for($i=1;$i<=$num;$i++){
           $res *= $i;
       }
       return $res;
   }
   echo jc(4);
   //遞迴函式 計算階乘(面試時會考到)
    function nnn1($num1){
     //用if判斷用或(||),用&&(and)找不到0/1就無限迴圈
        if(($num1==0)||($num1==1)){
            //return是使用在多次使用的條件下使用.
            //echo是只顯示在檔案中,不是調用
            return 1;
        }else{
            return $num1*nnn1($num1-1);//使用自身判斷
        }

    }

    echo nnn1(6);
   */
    /*
     5.寫出一個函數,實現交換目的,用地址傳值
      function swap(&$a,&$b){
         $c = ‘‘;
         $c = $a;
         $a = $b;
         $b = $c;
     }
      $a = 25;
      $b = 35;
      swap($a,$b);
      echo ‘$a是:‘.$a.‘<br>‘;
      echo ‘$b是:‘.$b;
    */
      /*
     6.輸出一個金字塔用函數,層數為3
      for ($i=0;$i<5;$i++){
       for ($j=0;$j<=$i;$j++){
       echo " *";
       }
      echo "<br>";
     }
     echo ‘<hr/>‘;
   for ($i=0;$i<5;$i++){
       for ($j=0;$j<=$i;$j++){
       echo " *&nbsp;";
       }
      echo "<br>";
     }
     echo ‘<br/>‘;

    for ($i=0;$i<5;$i++){
        for($k=5;$k>$i;$k--){
            echo ‘-‘;
        }
       for ($j=0;$j<=$i;$j++){
       echo " *";
       }
      echo "<br>";
     }
     echo ‘<br/>‘;
   for($i=5;$i>0;$i--){
       for($j=5-$i;$j>0;$j--){
           echo ‘*‘;
       }
       echo ‘<br/>‘;
   }
   echo ‘<hr/>‘;
   for($i=5;$i>0;$i--){
       for($j=5-$i;$j>0;$j--){
           echo ‘*&nbsp;‘;
       }
       echo ‘<br/>‘;
   }
   echo ‘<hr/>‘;
      */
    /*
    7.產生1-100用range(),並輸出前50個奇數,後50個偶數(用指標)
    $arr = range(1, 100);
    echo ‘<pre>‘;
    print_r($arr);
    
   
      for ($i=1; $i < 100; $i++) {
          if ($i<=50) {
          echo $i*2-1;   
          }else{
         echo ($i-50)*2;
          }
        echo ‘<br>‘;
    }
    */
   /*
  8.產生一副撲克,打亂髮牌,輸出三個人的牌及地主牌《用數組》
   //1.輸出撲克牌
  $arr = array(2,3,4,5,6,7,8,9,10,‘A‘,‘J‘,‘Q‘,‘K‘);
   //count擷取數組長度從1開始
  // 下標是從0開始
  var_dump($arr);
  $color = array(‘紅心‘,‘黑桃‘,‘方塊‘,‘梅花‘);
  $poker[] = ‘POKER‘;
  $poker[] = ‘poker‘;  
  for ($i=0; $i <count($color) ; $i++) {
          for ($j=1; $j <=13 ; $j++) {
            
           switch ($j) {
               case ‘1‘:
                    $poker[]=$color[$i].‘A‘;
                   break;
               case ‘1‘:
                    $poker[]=$color[$i].‘J‘;
                   break;
               case ‘1‘:
                    $poker[]=$color[$i].‘Q‘;
                   break;
               case ‘1‘:
                    $poker[]=$color[$i].‘K‘;
                   break;
               
               default:
                   $poker[]=$color[$i].$j;
                   break;
           }

          }
   }
   echo ‘<pre>‘;
  var_dump($poker).‘<br/>‘;
  */
 
  /*
  9.《用數組》
  產生一副麻將

麻將花色:
字牌:
東西南北中發白 *4

條張:*4
1-9

筒張:*4
1-9

萬張:*4
1-9

花牌視為不存在
72+36+28=
72+64=136


$hua = array(‘筒‘,‘條‘,‘萬‘);
    $zi = array(‘東風‘,‘西風‘,‘南風‘,‘北風‘,‘紅中‘,‘發財‘,‘白板‘);
    $card = array();

    //所有牌都是4張
    for ($i=0; $i < 4; $i++) {

        //三種花色迴圈
        for ($j=0; $j < count($hua); $j++) {

            //九張牌迴圈
            for ($k = 1; $k <= 9 ; $k++) {
                 
                 $card[] = change($k).$hua[$j];
             }
         }

         //字迴圈
         for ($j=0; $j < count($zi) ; $j++) {
             $card[] = $zi[$j];
         }
    }

    //阿拉伯數字轉換
    function change($num){

        switch ($num) {
            case 1:
                return ‘一‘;

            case 2:
                return ‘二‘;

            case 3:
                return ‘三‘;

            case 4:
                return ‘四‘;

            case 5:
                return ‘五‘;

            case 6:
                return ‘六‘;

            case 7:
                return ‘七‘;

            case 8:
                return ‘八‘;

            case 9:
                return ‘九‘;

        }

    }


    echo ‘<pre>‘;
    var_dump($card);
  */
 
  /*
  10.使用迴圈和隨機數演算法.產生一個10個元素的數組.每個數組中放置隨機的6位隨機字母+數字
下標為偶數
輸出每個元素的前三位.
下標為奇數
輸出後三位
使用 substr


addRand(6,10);



    function addRand($kind,$len){

        $a = range(‘a‘,‘z‘);
        $b = range(0, 9);
        $c = array_merge($a,$b);


        switch ($kind) {
            #純數字
            case 1:
                
                for ($i=0; $i < $len; $i++) {
                shuffle($b);
                echo $b[0];
                }

                break;

            case 2:
                
                for ($i=0; $i < $len; $i++) {
                shuffle($a);
                echo $a[0];
                }

                break;

            case 3:
                
                for ($i=0; $i < $len; $i++) {
                shuffle($c);
                echo $c[0];
                }

                break;
            
            default:
                echo ‘你搞毛啊‘;
                break;
        }
        





    }
  */
 
  /*
  11.使用迴圈產生一串字串,
1,2,3,4....100;
然後使用explode()函數將其分割成數組.

  $a = ‘ ‘;
  //使用for迴圈產生字串
  for ($i=1; $i <=100 ; $i++) {
      //.是串連符
       $a.=$i.‘,‘;
  }
 
 //輸出迴圈結果
  echo $a;
  //以逗號為分隔字元,切割字串轉換為數組
  $b = explode(‘,‘, $a);
  array_pop($b);
  //段落顯示數組結果
  echo ‘<pre>‘;
  var_dump($b);
  */
    


   








 ?>

php學習測試題目

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.