To be honest i'm not sure. I can find a few similar things googling the problem but nothing that really tells me why it happened.
My best guess is that it installed something like .net or the MS XML 6 which needed a reboot to finish the install because some files were in use and after the reboot they were still in use so it kept rebooting to try again. Have a look in the folder below and see if it left it's log behind as it might give a clue.
c:\Program Files\Microsoft SQL Server\90\Setup Bootstrap\LOG\Summary.txt
If you have a 64-bit OS it will be in the "Program Files (x86)" path instead.
The express installer does a few thing the other editions don't do and i have never really like it to be honest. I have seen it completely destroy .net more than once and i have even seen it fail to install because XML 6 was already installed and it couldn't handle skipping that part for some reason. Why they made the express installer so bad i don't know but it is the exact reason i never shared my silent install+configure method as if it went wrong it would look like my fault when it is actually the installer's.
The only other thing i can suggest without knowing what caused it is to try a non-express edition as the installer is far better and doesn't trip over simple problems like the express one does. You should be able to get a free 180 day trial from the microsoft site or maybe a naughty copy from somewhere. The MSSQL 2000 installer doesn't require .net or any of the other stuff bundled with express and is even less likely to do odd things. There is no free version of 2000 so evaluation or naughty copies are the only choice there.
EDIT: I just saw the screenshot ont he other topic. Try installing the latest Windows Installer 4.5 You want one of the downloads shown below depending in whether you have an x86 or x64 system (use x86 if not sure).
WindowsServer2003-KB942288-v4-x86.exe
WindowsServer2003-KB942288-v4-x64.exe
You must be registered to see links
Also make sure that the windows installer service (cntrol panel->admin tools->services) is actually started too.