You can achieve what you want by setting $ORACLE_HOME in your login shell. You do this by putting it in .cshrc or .login in your home directory. If you change the value of an environment variable in a subprocess (e.g. your program), then it will not and indeed should not be reflected in the parent process (the shell, in this case). If you use google or
Super Search you will find numerous discussions of this topic.