黑马程序员《PHP基础案例教程》第2版课后练习—第04章

第4章课后练习

答案均参考教材官方发布的PPT,以下是下载PPT的页面
人民邮电出版社教育社区:PHP基础案例教程(第2版)-图书-人邮教育社区

一、填空题

1、数组分为索引数组和(关联数组)。
2、使用短数组方式定义数组的语法是(数组元素使用"键=>值"的方式来表示,各个元素之间使用","分隔)。
3、现有数组$arr=array(1, 2, array(‘h’)),则count($arr, 1)的返回值是(4)。
4、将数组的指针指向最后一个元素的函数是(end())。
5、将一个数组分割成多个数组的函数是(array_chunk())。

二、判断题

1、在数组中,元素的值是唯一的。(×)
2、sort()函数在默认情况下,按照数组中元素的类型从低到高进行排序。(√)
3、使用shuffle()函数可以打乱数组元素的顺序。(√)
4、PHP中定义数组时,不需要指定数组的大小。(√)
5、explode()函数用指定的连接符将数组拼接成字符串。(×)(说反了)

三、选择题

1、下列选项中,不能用来操作数组的运算符是(D)。
A、联合“+”
B、相等“==”
C、全等“===”
D、自增“++”
2、下列函数中,可以将数组中各个元素连接成字符串的是(A)。
A、implode()
B、explode()
C、str_repeat()
D、str_pad()
3、下列函数中,可以对数组按照键名逆向排序的是(D)。
A、sort()
B、asort()
C、ksort()
D、krsort()
4、下列函数中,能够检查数组中是否存在某个值的是(B)。
A、array_search()
B、in_array()
C、array_key()
D、array_exists()
5、下列定义数组的方法错误的是(C)。
A、array(1, 2)
B、[1, 2]
C、(1, 2)
D、[‘name’=>‘zhangsan’, ‘age’=>20]

四、简答题

1、请列举常用的数组排序的方法,并简要说明每个算法的排序原理。

答:(1)冒泡排序:
冒泡排序是比较简单的排序算法。它的实现原理是,将数组元素按照从小到大或从大到小的顺序排序,不断比较数组中相邻两个数组元素的值,较小或较大的元素前移。
(2)选择排序
选择排序是一种非常直观的排序算法,它的实现原理是,从待排序的数组中选出一个最小或最大的元素与数组的第1个元素互换,接着再在剩余的数组元素中选择最小或最大的一个与数组的第2个元素互换,依次类推,直到待排序数组全部数组元素排序完成。
(3)快速排序
快速排序的实现思路是:首先选择一个基准元素,通常选择待排序数组的第1个数组元素。通过循环数组元素,将待排序的数组分成两个部分,其中一部分比基准元素小,另一部分比基准元素大,然后再利用同样的方法递归地排序划分出的两部分,直到将所有划分的数组排序完成。
(4)插入排序
插入排序是通过构建有序数组,将无序数组中的元素和有序数组中的元素进行比较,有序数组的比较顺序是从最后一个元素向第一个元素遍历,找到相应位置插入数组元素,直到完成无序数组的所有元素排序。

2、请列举5个常用的数组函数。

函数名称功能描述
key()获取当前指针指向数组元素的键
current()获取当前指针指向数组元素的值
next()将数组中的指针向后移动一位
prev()将数组中的指针向前移动一位
end()将数组的指针指向最后一个数组元素
reset()将数组的指针指向第一个数组元素

如有侵权请联系我删除。

  • 20
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
PHP基础教程案例(第2)》的课后作业是通过实践来巩固学习的知识和技能。在这本书中,作者通过具体的案例来讲解PHP基础知识点和应用技巧,课后作业则是为了帮助读者更好地理解和应用这些知识。 课后作业可以包括以下几个方面的内容: 1. 编写代码:根据书中案例的要求,编写相应的PHP代码。这些代码可以是简单的输出语句,也可以是基于数据库的数据操作。 2. 调试错误:通过阅读书中案例的代码和错误信息,找出其中的错误并进行修复。这个过程可以帮助读者提升自己的调试能力和解决问的能力。 3. 思考问:根据书中案例的要求,思考其中的问并给出自己的解决方案。这个过程可以帮助读者培养自己的思考能力和创造性思维,增强对知识的理解和应用能力。 4. 扩展任务:在完成基础任务的基础上,可以进行一些额外的扩展任务。例如,对案例中的功能进行升级或改进,添加一些新的功能等。这个过程可以帮助读者巩固已有的知识,并在实践中学习新的知识。 通过完成这些课后作业,读者可以加深对PHP基础知识的理解和应用,提高自己的编程能力,为今后的学习和工作奠定坚实的基础。同时,通过实践中的问解决和代码编写,读者还能积累宝贵的经验,提高自己的解决问的能力和创造能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值