I got a couple of results.
1. The first time I tried it, I got your error message. I had blank lines at the end of my control file.

2. After I cleaned up my control file and re-loaded, I got the following output in my log file:

-----Begin Log----
SQL*Loader: Release 8.1.5.1.0 - Production on Tue Jan 23 09:20:35 2001

(c) Copyright 1999 Oracle Corporation. All rights reserved.

Control File: loadcust.ctl
Data File: sqltest.dat
Bad File: sqltest.bad
Discard File: none specified

(Allow all discards)

Number to load: ALL
Number to skip: 0
Errors allowed: 50
Bind array: 64 rows, maximum of 65536 bytes
Continuation: none specified
Path used: Conventional

Table CUST, loaded from every logical record.
Insert option in effect for this table: INSERT

Column Name Position Len Term Encl Datatype
------------------------------ ---------- ----- ---- ---- ---------------------
ACCT_NO 1:10 10 CHARACTER
BANK_NO 11:13 3 CHARACTER
FEED 14:18 5 CHARACTER
ADDR 28:37 10 CHARACTER
ICB_FLAG CONSTANT
Value is '0'
PRINT_SUPPRESS_FLAG CONSTANT
Value is '0'
CREATE_TIME SYSDATE
DDA_INSERT_TIME SYSDATE
PENDING CONSTANT
Value is 'V'

Record 1: Rejected - Error on table CUST.
ORA-01400: cannot insert NULL into ("JEFF"."CUST"."PROFIT_CENTER")

Record 2: Rejected - Error on table CUST.
ORA-01400: cannot insert NULL into ("JEFF"."CUST"."PROFIT_CENTER")

Record 3: Rejected - Error on table CUST.
ORA-01400: cannot insert NULL into ("JEFF"."CUST"."PROFIT_CENTER")

SQL*Loader-524: partial record found at end of datafile (sqltest.dat)

------End Log------

Basically, this is telling you that three records were rejected because they had no PROFIT_CENTER defined. Since PROFIT_CENTER is tagged as NOT NULL and you have not specified a default PROFIT_CENTER, sqlldr rejects the record.

Oh, and the last line means I got a blank line in the data file.