The criterion for truth-functionality is something like the following:
Definition. (truth-functionality) A sentential operator ☆ of arity k is truth-functional if and only if the truth-value of ☆(φ1...φk) is a function of (i.e. depends entirely on) the truth-values of φ1...φk.
Example 1. The usual sentential operator ¬ (of arity 1) is truth-functional according to (Definition) iff the truth-value of ¬φ is a function of the truth-value of φ. Is that the case? The usual semantics of ¬ is the following: ¬φ is true if φ is false, and ¬φ is false if φ is true. As you can see, to calculate the value of ¬φ, it is necessary and sufficient to know what the truth-value of φ is.
Example 2. The usual sentential operator ∧ (of arity 2) is truth-functional according to (Definition) iff the truth-value of (φ1 ∧ φ2) is a function of the truth-values of φ1 and φ2. Recall the semantics of ∧: (φ1 ∧ φ2) is true just in case φ1 and φ2 are both true, and false otherwise. Again, since no other piece of information is needed to settle the truth-value of the conjunction, we know that ∧ is truth-functional.
The first step toward applying the (Definition) to your examples is to identify the operators (for some L):
Translations.
(1) φ → ψ
(2) Analytic(φ, ψ)
(3) Counterfactual(¬φ, ψ)
(4) Contradiction(φ)
(5) (⊥ → φ)
Assuming that these capture the meaning of your (1–5), the second task is to define their meanings:
In (1) we have a binary operator →, whose semantics is: (φ → ψ) is false if φ is true and ψ is false, otherwise it's true. As this standard semantics makes clear, nothing more than the truth-values of φ and ψ are needed to settle the truth-value of (φ → ψ). That means that (φ formally implies ψ in L) is a truth-functional operator.
In (2) we have a binary operator Analytic, whose semantics depends on one's particular view of what it means for a sentence to be analytic. There is no standard semantics to which we can appeal to settle the question. But, following Carnap, we can define a sentence φ to be analytic just in case φ is logically implied by a set of meaning postulates Π, which can be thought of as a giant conjunction of sentences that capture the meanings of terms relevant to us.
For example, all bachelors (B) are unmarried men (U ∧ M), so Π will include a sentence like this: ∀x(Bx → (Ux ∧ Mx)). We can then ask: is it analytically true that if someone is a bachelor, he is a man, i.e., is Analytic(Bx, Mx) true? With our Carnapian semantics for Analytic, the problem reduces to checking whether: [(Π ∧ Bx) → Mx] is logically true. Without going into the precise semantics of 'logically true', to check that, we consider a model that satisfies Π and suppose that an arbitrary object is a bachelor. The sentence will be false if that object is not a man, otherwise it will be true. But since the model satisfies Π, which forces all bachelors to be unmarried men, the sentence will be evaluated to true.
The moral of this long excursion is this: analyticity relies on the meanings of the terms occurring in the formula, so simply knowing the truth-values of the component sentential symbols doesn't allow us to conclude whether the compound formula is true or false. So Analytic is not truth-functional.
In (3), like in (2), we have a binary operator that depends on information other than the truth-values of φ and ψ. I should say that, (3) is ambiguous, because you didn't specify whether the modal auxiliary is a 'might' or a 'would'; if it's a 'would', we have a universal operator, if 'might, an existential one. Whichever may be the case, to evaluate the truth-value of (3), we need to know the similarity ordering between the possible worlds. The truth-values of φ and ψ aren't enough to determine the truth-value of the compound expression. So Counterfactual is not truth-functional.
In (4) we have a unary operator standardly defined as follows: Contradiction(φ) is true just in case Tautology(¬φ) is true. And Tautology(φ) is true iff all truth-assignments to the sentential symbols occurring in φ make φ true. Since to determine whether a formula is a tautology it's necessary and sufficient to know the truth-values of the component sentences, Contradiction is truth-functional.
In (5) we have a disguised identity operator because (⊥ → φ) is equivalent to (⊤ ∨ φ), which is equivalent to φ. So the operator in (5) takes a sentence φ and returns true if φ is true, and false if φ is false. We have there a trivial case: the truth-value of the compound formula (φ) is not only dependent on the truth-value of the component formula φ, but is the truth-value of that component.
Needless to say, my explanations (1–5) depend crucially on the (Translations), the (Definition), and what I consider to be the standard semantics of the usual connectives. To figure out the answer to your homework, you need to make sure that the (Translations) make sense and the (Definition) captures the meaning of truth-functionality as defined by your teacher. If not clear about anything, leave a comment.