There is a much easier way to determine if a file is a regular file (and exists):
#!/bin/csh
echo "Enter filename: "
set filename = $<
test -f $filename
if ( $status == 0 ) then
echo "File is an ordinary file."
else
echo "File is not an ordinary file."
endif
# end of file.
Details on how test(1) works can be found from an appropriate manual page. In this example I've simply used the fact that test(1) exits with a non-zero exit code in case the test condition used is not fulfilled: switch -f tests that the argument given exists and is a regular file.