A programmable quantum computer is experimentally demonstrated by nuclear magnetic resonance using one qubit for the program and two qubits for data. A non-separable two-qubit operation is performed in a programmable way to show the successful demonstration. Projective measurements required in the programmable quantum computer are simulated by averaging the results of experiments just like when producing an effective pure state. (C) 2003 Elsevier Inc. All rights reserved.