<?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学习测试题目的更多相关文章

  1. 个人 WPF+EF(DBFirst) 简单应用开发习惯及EF学习测试(备忘) -- 2

    接上篇:个人 WPF+EF(DBFirst) 简单应用开发习惯及EF学习测试(备忘) -- 1 Step1 在主程序中设置连接数据库 从Model类库的 App.Config 把数据库字符串拷贝出来, ...

  2. 学习测试框架Mocha

    学习测试框架Mocha 注意:是参考阮老师的文章来学的.虽然阮老师有讲解,但是觉得自己敲一遍,然后记录一遍效果会更好点.俗话说,好记性不如烂笔头. Mocha 是javascript测试框架之一,可以 ...

  3. Oracle Flushback 学习测试

    Oracle Flushback 学习测试:三思笔记 Flashback恢复 从9i开始,利用oracle查询的多版本一致的特点,实现从回滚段中读取一定时间内在表中操作的数据,被称为 flashbac ...

  4. 一套很有意思的C语言测试题目

    网络上逛博客,发现了一套很有意思的测试题目: https://kobes.ca/ 大家有兴趣可以做一下,考一些关于C语言使用的细节: 中文翻译参考: https://www.cnblogs.com/l ...

  5. partOneJava学习卷土重来-----第一次测试题目介绍

    石家庄铁道大学2021年秋季   2020 级课堂测试试卷(一)(15分) 课程名称: JAVA语言程序设计  任课教师: 王建民        考试时间: 150 分钟 一.考试要求: 1.按照测试 ...

  6. LuoguB2001 入门测试题目 题解

    Update \(\texttt{2021.7.3}\) 经测试,本题 \(a,b\) 范围在 long long,对代码进行了修改,并修改一些笔误,更新了数据范围. \(\texttt{2021.7 ...

  7. OCM 学习练习题目

    1:数据安装操作练习:考试题目 1: Creating a database & Server Configuration --[101]-- #创建数据库 1. Create the dat ...

  8. 《Cracking the Coding Interview》——第12章:测试——题目6

    2014-04-25 00:53 题目:你要如何测试一个分布式银行系统的ATM机? 解法:ATM是Automatic Teller Machine,取钱的.我想了半天,没找到什么很清晰的思路,也许是因 ...

  9. 《Cracking the Coding Interview》——第12章:测试——题目5·

    2014-04-25 00:41 题目:怎么测试一支笔?(Pen?您老说的是钢笔?) 解法:这种简约而不简单的题目,实在是面试官最喜欢,面试者最头疼的类型了.面试官可以只花三秒,以一种灰常高贵冷艳的语 ...

随机推荐

  1. Nginx反向代理、CORS、JSONP等跨域请求解决方法总结

    由于 Javascript 同源策略的存在使得一个源中加载来自其它源中资源的行为受到了限制.即会出现跨域请求禁止. 通俗一点说就是如果存在协议.域名.端口或者子域名不同服务端,或一者为IP地址,一者为 ...

  2. IOS网络请求之NSURLSession使用

    前言: 无论是Android还是ios都离不开与服务器交互,这就必须用到网络请求,记得在2013年做iOS的时候那时候用的ASIHTTPRequest框架,现在重新捡起iOS的时候ASIHTTPReq ...

  3. css遇到的那些坑——浏览器默认样式设置

    今天自己写css样式,其中用到了<ul>标签,设置了一系列效果后运行,发现位置与设置有出入.chrome上打开检查项,发现<ul>标签的styles底部多了以下一段: ul,  ...

  4. JavaScript刷新页面的方法(包括Frame框架的刷新方式)

    JavaScript刷新页面的方法 1    history.go(0) 去指定的某页 2    window.location.reload()刷新当前页面 window.location.relo ...

  5. 如何一步一步用DDD设计一个电商网站(十四)—— 回顾与总结

    本系列所有文章 如何一步一步用DDD设计一个电商网站(一)—— 先理解核心概念 如何一步一步用DDD设计一个电商网站(二)—— 项目架构 如何一步一步用DDD设计一个电商网站(三)—— 初涉核心域 如 ...

  6. Java面向对象知识点

    对象:一切客观存在的事物都是对象 语法部分: 类的概念:1.类是对象的抽象 2.类是客观事物在人脑中的主观反应 3.类是对象的模板 类的设计: 属性:定义位置:类以内,方法以外 实例变量:1 有默认值 ...

  7. webpack入门与解析(一)

    每次学新东西总感觉自己是不是变笨了,看了几个博客,试着试着就跑不下去,无奈只有去看官方文档. webpack是基于node的.先安装最新的node. 1.初始化 安装node后,新建一个目录,比如ht ...

  8. JAVA设计模式:代理模式

    最近公司从新开发一个项目,为此对老的代码进行评估分析发现有些地方是可以采用代理模式来进行的,为此对代理模式进行了一次理解: 代理模式:即为指定的目标对象提供一个代理商,由代理商来完成对目标对象的操作. ...

  9. 详解JavaScript闭包

    要想完全明白JavaScript的闭包,要先明白js中的一些基础原理,然后我再给出一些例子来讲解闭包. 在执行JavaScript时会创建一个执行环境(excution context),执行环境定义 ...

  10. 《C++ Primer》学习笔记 :命名空间的using声明

    最近在学C++,在<C++ Primer>第五版的3.1节中说到使用using声明来使用命名空间中的成员,<C++ Primer>中这样写道: 有了using声明就无须专门的前 ...