What I have done
I posted a similar question yesterday (as can be seen here), but nobody could provide a answer up to now and thus I still have difficult time trying to solve this similar problem.
The difference between the two questions is that this seems to be more complicated since feasible set is not just part of the hyperplane but a halfspace with some bounds.

A solution to this problem is quite easy. First of all note, that the components of $x$ are pnly from the $[0, 1]$ interval.
The function that you are trying to optimize is linear function of the components of $x$ and you want to maximize it.
Naturally, only the positive components of $c$ are going to raise the value of $c^T x$, thus if $c_i \leq 0$ then we want $x_i = 0$.
Also, we would like to set the values of $x_i$ to one if $c_i > 0$. This would lead to a maximum value of $c^T x$ if there would not be the first inequality.
The first inequality can be represented as follows: we want the number of components of $x$ equal to one to be $k$. Thus, the value of $1$ will be assigned only to those components of $x$ which are equivalent to the first $k$ highest components of $c$.
In other words, let $\sigma \colon \{1,2,\dots,n\} \rightarrow \{1,2,\dots,n\}$ be a permutation such that $c_{\sigma(1)} \geq \dots \geq c_{\sigma(n)}$. Let us denote $$ p = \mathrm{card}\{ i \colon c_i > 0\}. $$ Then the solution is the vector $x$ with components given by: $$ x_i = \begin{cases} 1, &\text{if } \sigma^{-1}(i) \leq \min\{p,k\}, \\ 0, &\text{otherwise.} \end{cases} $$
Edit: Of course, for a rigorosity some proving would be necessary. This is only intuitive approach to the solution of your optimization problem. Also, your first problem would have similar solution: only the highest $\lfloor \alpha \rfloor$ components would be set to $1$ (iff corresponding components of $c$ are positive) and the $\lfloor \alpha\rfloor +1$ highest component of $x$ would be set to $\alpha - 1$ (again, iff corresponding component of $c$ is positive).