Asee peer logo

Teaching The Introductory Computer Programming Course For Engineers Using Matlab And Some Exposure To C

Download Paper |


2006 Annual Conference & Exposition


Chicago, Illinois

Publication Date

June 18, 2006

Start Date

June 18, 2006

End Date

June 21, 2006



Conference Session

Computing Tools for Engineering Education

Tagged Division

Computers in Education

Page Count


Page Numbers

11.1231.1 - 11.1231.11



Permanent URL

Download Count


Request a correction

Paper Authors


Asad Azemi Pennsylvania State University

visit author page

Asad Azemi is an associate professor of Engineering at Penn State University. He has received his B.S. degree from UCLA in 1982, M.S. degree from Loyola Marymount University in 1985, and Ph.D. degree from University of Arkansas in 1991. His professional interests are in nonlinear stochastic systems, control systems, signal estimation, bio-computing, and use of computers in undergraduate and graduate education.

visit author page


Laura L. Pauley

visit author page

Laura Pauley is a Professor of Mechanical Engineering and the Arthur L. Glenn Professor of Engineering Education at Penn State University, University Park. Since 2000, she has also served as the Professor-in-Charge of Undergraduate Programs in Mechanical and Nuclear Engineering. Dr. Pauley teaches courses in the thermal sciences and conducts research in computational fluid mechanics. She received her Ph.D. from Stanford University in 1988.

visit author page

Download Paper |

NOTE: The first page of text has been automatically extracted and included below in lieu of an abstract

Teaching the introductory computer programming course for engineers using Matlab and some exposure to C


The introductory computer programming course for engineers is usually taught using the C++ programming language. This work describes our current effort, as a pilot project, which can be used in an evaluation process by those departments that would like to substitute Matlab for C++. Those who would like to continue the current practice, but are looking for more challenging problems or projects involving Matlab can also use the project outcome. The main reason behind switching to Matlab from C++ is the fact that many engineering faculty at Penn State, in various departments, have recognized that the current courses teaching programming skills using C++ are not fully utilized in later required courses in the curriculum. Increasingly in undergraduate courses in various engineering disciplines, Matlab is being used for problem solving. Robotics projects, which include using Handy Board and Interactive C programming, were added to illustrate an application of programming which students can relate to and enjoy, as well as helping them to improve their software and algorithm design skills for real-time applications. A discussion of the advantages and disadvantages of conducting a computer programming course in this format, including three different course formats that we have used are included.

I. Introduction

Computer programming has been part of the engineering curriculum since the dawn of the computer age. The course is typically taught during the freshman or first semester of the sophomore year to ensure that students have sufficient programming background for solving problems in engineering courses. Although the assignments usually require some mathematical and/or basic physics/engineering background, the course is focused around programming concepts. Most universities use a “teach-a-language” approach in teaching this course, which means students work with a general purpose programming language (e.g., C++, Java, or FORTRAN) that is sufficiently flexible to build anything that needs to be built. This approach provides training in programming, but is so time consuming that there is little opportunity left to learn about computation.

II. Current practice

The introductory computer programming course for engineers, which was once dominated by FORTRAN for several decades, was gradually changed to C and later to C++ during the late 1980’s and early 1990’s. Currently most universities require only one computer-programming course for their engineering students (excluding computer engineering and computer science). This course is usually taught in C++ and in some cases in Java and FORTRAN. Until the fall 2004 semester at Penn State, we offered two versions of this course (C++ and FORTRAN), where the C++ version was required by the majority of the departments. The course was designed to cover fundamental concepts of programming (using C++ or FORTRAN), including introduction to computers and programming; data types, declaration and displays; assignment

Azemi, A., & Pauley, L. L. (2006, June), Teaching The Introductory Computer Programming Course For Engineers Using Matlab And Some Exposure To C Paper presented at 2006 Annual Conference & Exposition, Chicago, Illinois. 10.18260/1-2--670

ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2006 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015