Help us help you; post your errors, next time.

cin >> nums;
nums is an array; you're asking for a single number. You can't put it in an entire array.

int findMax(int vals[], int numels); <---- deepsix the semicolon
{ ....
You also have a rogue '{' floating there. No dam' good.

In your second exaple, the for loop never runs. You are setting i to 1 and asking it to run only when i >= MINNUM. Anottagonnahappen less'n MINNUM is 1 or less.

Your last example displays one thing per line because you are telling it to.
cout << *(samtest + i) << endl;"  <-- endl is a combination newline and buffer flush.
Put the endl outside the loop if you want it there.