Find all files/directories with '.c' or '.h' extension under current directory tree and search for the regex expanded by the variable $i and show the output by paging through one screenful at a time
find . -name '*.[ch]' -exec grep $i {} | less