【发布时间】:2012-09-15 19:01:45
【问题描述】:
问题来了:
编写一个函数(first-n-elements lst n),它返回一个列表,该列表仅包含lst 的第一个n 元素。例如,(first-n-elements '(1 2 3 4 5 6) 3) 应该返回 '(1 2 3)。您的函数应处理n 大于列表长度的情况(在这种情况下它将返回整个列表),并且n 为0(应返回'())。
我的答案是:
(define (first-n-elements lst n)
(cond((null? lst) '())
((= n 0) lst))
((> n 0) (cons (+ (car lst) 1) (first-n-elements) (cdr lst) (- n 1))))
我知道错了,请帮忙
【问题讨论】:
标签: scheme