Can i use an external hard drive without an internal hard drive for a desk top p.c.?

This can easily be done provided your motherboard supports booting to USB (most manufactured within the past five years do).  You will need to follow TragicallyHip's advice on setting the BIOS to allow this.  From there, you will also need to install the OS to that drive; copying an existing drive to it will not work unless you use imaging software.

Also, as mentioned, USB drives are significantly slower than internally mounted drives.  This is primarily due to the fact that even USB 2.0 isn't nearly as fast as IDE or SATA.

People use this method all the time to create multi-booting machines, particularly in cases where it would be impractical to repartition the existing drive.  Also, as the external drive is portable, you can use your OS on any computer that supports booting from USB.
 At startup press the key needed to get to your BIOS settings( usually it's F8 but it varies by PC)within your BIOS are options that allow you to set your machines boot order.Follow your BIOS on screen instructions and choose external HDD as ( 1.) boot device,(2.) CD, and so on.Please note that the read and write speeds on an external USB drive are considerably slower than an internal one so performance will suffer. 
do you mean that you want to use an external hdd, to boot your computer from?
yes, it is theoretically possible, however some computers may not be able to boot off a usb interface.