• Some more information is needed. What document class are you using? – egreg Apr 21 '13 at 22:50
• book document class – Muhammad Apr 21 '13 at 22:50
• Using uppercase only seems a bad decision. Do you mean a combination of uppercase and small caps? (Small caps substituted for lowercase.) – user10274 Apr 22 '13 at 7:17

The only change is \MakeUppercase.

\documentclass{book}

\begin{document}

\makeatletter
\renewcommand\chapter{\if@openright\cleardoublepage\else\clearpage\fi
\thispagestyle{plain}%
\global\@topnum\z@
\@afterindentfalse
\secdef\@chapter\@schapter}
\def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
\if@mainmatter
\refstepcounter{chapter}%
\typeout{\@chapapp\space\thechapter.}%
{\protect\numberline{\thechapter}\MakeUppercase{#1}}%
\else
\fi
\else
\fi
\chaptermark{#1}%
\if@twocolumn
\else
\fi}

\makeatother

\tableofcontents

\chapter{First}

Blah, blah.

\chapter{Second}

Blah, blah.

\end{document}


• Redefining \chapter doesn't seem necessary. – egreg Apr 21 '13 at 23:08
• @egreg You are right. Redefining the whole definition is for educational purposes. – Przemysław Scherwentke Apr 21 '13 at 23:12
• Thanks :) ... It works with \uppercase instead of \MakeUppercase – Muhammad Apr 21 '13 at 23:17
• @Muhammad Strange: \uppercase? Are you using LaTeX2.09? – Przemysław Scherwentke Apr 21 '13 at 23:22
• Your current solution only works for chapters in \mainmatter, but not for those in \frontmatter or \backmatter. You need to add \MakeUppercase also in the \else branch. – Gonzalo Medina Apr 21 '13 at 23:45