Hi ok below is the code I hope you needed, but you'll see that there are no new loops, I just simply used an if/else statement, but the main trick is in the else block where I used
counter--; Here is the code and compare it with yours, you'll see the differences.
Enjoy

PS please use code tags when posting code.
CODE
#include <stdio.h>
int main(void)
{
/*Declare Variables */
float amount;
float average = 0;
float amountTotal = 0;
int NumAmount, counter;
/*Prompt to enter number of Amounts to calculate */
printf( "First, enter the number of amounts to process: " );
scanf ("%d", &NumAmount);
fflush (stdin);
/*Display number of amount to be averaged */
printf( "Now enter %d Amount to be averaged. \n\n" , NumAmount);
/*Start loop*/
for( counter = 1; counter <= NumAmount; ++counter )
{
printf( "Enter amount #%i:", counter); /*Prompt for amount*/
scanf("%2f", &amount);
if (amount >= 0)
{
fflush (stdin);
amountTotal += amount;
printf("\n");
}
else if (amount < 0){
printf ( " invalid number:\n " );
counter--;
}
}
average = amountTotal / NumAmount;
/* Print the results */
printf( "The Average of the %i Amounts entered is %.2f\n", NumAmount, average );
printf ( "The total of the %i Amounts enter are %.2f ", NumAmount, amountTotal );
getchar();
return( 0 );
}