Could you guys take a look at the following and tell me what's wrong with it. I can get it to compile using cc in Terminal, but the second scanf line does not store values correctly when i execute the program. Well, at least not on my machine. When I telnet into a school unix machine, the code compiles and performs exactly how it should. Any ideas?
#include <stdio.h>
int main()
{
char cmpnd_code, first_name, last_name;
int num_months, input_status, act_num;
float invest_amt;
/* Prompt for personal and account information */
printf( "Enter

t1st lettter of first name (char) and last name (char)\n" );
printf( "\taccount number (int), investment amount (float)

n");
fflush(stdout);
input_status = scanf( "%c %c %d %f", &first_name, &last_name, &act_num, &invest_amt );
fflush(stdin);
/* verify initials, account number, investment amount */
printf( "\nNumber of values scanned and stored = %d\n", input_status );
printf( "\nVerifying Input

n first initial

t\t %c\n last initial

t\t %c\n",
first_name, last_name );
printf( " account number

t %d\n investment amount

t %f\n\n",
act_num, invest_amt);
/* Prompt for compound interest character code and number of months */
printf( "Enter: compound interest code (char) and number of months (int)

n" );
fflush(stdout);
input_status = scanf( "%c %d", &cmpnd_code, &num_months );
fflush(stdin);
/* verify compound interest code and number of months */
printf( "\nNumber of values scanned and stored: %d\n", input_status );
printf( "\nVerifying Input

n compound interest code: %c\n number of months

t %d\n\n", cmpnd_code, num_months );
return 0;
}