Title: Chapter 3: Introduction to C Programming Language
1Chapter 3 Introduction to C Programming Language
- Features
- C development environment
- A simple program example
- Characters and tokens
- Structure of a C program
- comment and preprocessor directives
- basic data types
- data declarations
- statements
- Basic functions
2- Features
- Mid-level language
- Bit-wise operators supported
- Popular as system programming language
- Language where Unix O/S was developed
- Fast and efficient as compared to other languages
of the same category (PL/1, Cobol, Pascal and
Fortran)
3C Development Environment
Preprocessor program processes the code.
Preprocessor
Phase 2
4(No Transcript)
5From code to executables
Executable Code
6A Simple Program Example
include ltstdio.hgt void main() printf("Program
ming in C is easy.\n") Sample Program
Output Programming in C is easy.
7NOTE ABOUT C PROGRAMS In C, lowercase and
uppercase characters are very important! All
commands in C must be lowercase. The C programs
starting point is identified by the word
main() This informs the computer as to where
the program actually starts. The brackets that
follow the keyword main indicate that there are
no arguments supplied to this program (this will
be examined later on). The two braces, and ,
signify the begin and end segments of the
program.
8The purpose of the statement include
ltstdio.hgt is to allow the use of the printf ()
statement to provide program output. Text to be
displayed by printf() must be enclosed in double
quotes. The program has only one statement
printf("Programming in C is easy.\n") printf
() is actually a function (procedure) in C that
is used for printing variables and text. Where
text appears in double quotes "", it is printed
without modification. There are some exceptions
however.
9This has to do with the \ and characters. These
characters are modifiers, and for the present the
\ followed by the n character represents a
newline character. Thus the program
prints Programming in C is easy. and the
cursor is set to the beginning of the next line.
As we shall see later on, what follows the \
character will determine what is printed, i.e, a
tab, clear screen, clear line etc. Another
important thing to remember is that all C
statements are terminated by a semi-colon
10- Summary of major points so far
- Program execution begins at main()
- Keywords are written in lower-case
- Statements are terminated with a semi-colon
- Text strings are enclosed in double quotes
11Characters and tokens
- Characters are the basic building blocks in C
program, equivalent to letters in English
language - Includes every printable character on the
standard English language keyboard except ,
and _at_ - Example of characters
- Numeric digits 0 - 9
- Lowercase/uppercase letters a - z and A - Z
- Space (blank)
- Special characters , . ? / ( )
lt gt etc
12- A token is a language element that can be used in
forming higher level language constructs - Equivalent to a word in English language
- Several types of tokens can be used to build a
higher level C language construct such as
expressions and statements - There are 6 kinds of tokens in C
- Reserved words (keywords)
- Identifiers
- Constants
- String literals
- Punctuators
- Operators
13Reserved Words
- Keywords that identify language entities such as
statements, data types, language attributes, etc. - Have special meaning to the compiler, cannot be
used as identifiers in our program. - Should be typed in lowercase.
- Example const, double, int, main, void, while,
for, else (etc..)
14Identifiers
- Words used to represent certain program entities
(program variables, function names, etc). - Example
- int my_name
- my_name is an identifier used as a program
variable - void CalculateTotal(int value)
- CalculateTotal is an identifier used as a
function name
15Constants
- Entities that appear in the program code as fixed
values. - 4 types of constants
- Integer constants
- Positive or negative whole numbers with no
fractional part - Example
- const int MAX_NUM 10
- const int MIN_NUM -90
- Floating-point constants
- Positive or negative decimal numbers with an
integer part, a decimal point and a fractional
part - Example
- const double VAL 0.5877e2 (stands for 0.5877 x
102)
16- Character constants
- A character enclosed in a single quotation mark
- Example
- const char letter n
- const char number 1
- printf(c, S)
- Output would be S
- Enumeration
- Values are given as a list
- Example
17String Literals
- A sequence of any number of characters surrounded
by double quotation marks. - Example
- MALAYSIA
- How are you
- Example of usage in C program
- printf(My name is David Beckham\n)
- Output My name is David Beckham
18Punctuators (separators)
- Symbols used to separate different parts of the C
program. - These punctuators include
- ( ) ,
- Usage example
19Operators
- Tokens that result in some kind of computation or
action when applied to variables or or other
elements in an expression. - Example of operators
- - /
- Usage example
- result total1 total2
20Structure of a C program
Preprocessor directive (header file)
Program statement
Preprocessor directive
Global variable declaration
Comments
Local variable declaration
Variable definition
21Comments
- Explanations or annotations that are included in
a program for documentation and clarification
purpose. - Completely ignored by the compiler during
compilation and have no effect on program
execution. - Starts with / and ends with /
- Some compiler support comments starting with //
22Preprocessor Directives
- The first thing to be checked by the compiler.
- Starts with .
- Tell the compiler about specific options that it
needs to be aware of during compilation. - There are a few compiler directives. But only 2
of them will be discussed here. - include ltstdio.hgt
- Tell the compiler to include the file stdio.h
during compilation - Anything in the header file is considered a part
of the program - define VALUE 10
- Tell the compiler to substitute the word VALUE
with 10 during compilation
23Basic Data Types
- 3 examples of basic data types
- int (used to declare numeric program variables of
integer type) - char (used to declare character variable)
- double (used to declare floating point variable)
- In addition, there are float, void, short, long,
etc. - Declaration specifies the type of a variable.
- Example int local_var
- Definition assigning a value to the declared
variable. - Example local_var 5
24- A variable can be declared globally or locally.
- A globally declared variable can be accessed from
all parts of the program. - A locally declared variable can only be accessed
from inside the function in which the variable is
declared.
25Statements
- A specification of an action to be taken by the
computer as the program executes. - In the previous example, there are 2 lines
following variable declaration and variable
definition that terminate with semicolon . - global_var local_var VALUE
- printf (Total sum is d\n, global_var)
- Each line is a statement.
26Basic Functions
- A C program consists of one or more functions
that contain a group of statements which perform
a specific task. - A C program must at least have one function the
function main. - We can create our own function or use the
functions that has been created in the library,
in which case we have to include the appropriate
header file (example stdio.h).
27- In this section, we will learn a few functions
that are pre-defined in the header file stdio.h - These functions are
- printf()
- scanf()
- getchar() putchar()
- In addition to those functions, we will also
learn about Format Specifier and Escape Sequence
which are used with printf() and scanf().
28printf()
- Used to send data to the standard output (usually
the monitor) to be printed according to specific
format. - General format
- printf(control string, variables)
- Control string is a combination of text, format
specifier and escape sequence. - Example
- printf(Thank you)
- printf (Total sum is d\n, global_var)
- d is a format specifier
- \n is an escape sequence
29Format Specifier
Tells the printf() function the format of the
output to be printed put.
30Escape Sequence
Escape sequence is used in the printf() function
to do something to the output.
31scanf()
- Read data from the standard input device (usually
keyboard) and store it in a variable. - General format
- scanf(Control string, variable)
- The general format is pretty much the same as
printf() except that it passes the address of the
variable (notice the sign) instead of the
variable itself to the second function argument. - Example
32getchar() and putchar()
- getchar() - read a character from standard input
- putchar() - write a character to standard output
- Example
include ltstdio.hgt void main(void) char
my_char printf(Please type a
character) my_char getchar()
printf(\nYou have typed this character)
putchar(my_char)
33Supplementary slides
34C Program Some Common Program Structures
//attached files are placed here void
main() // variables are declared here //
initialization of variables, if any //some
input statements //some processing //some
output statements //tidy-up job, if any
35//attached files are placed here //some constants
definition int main() // variables are
declared here // initialization of variables, if
any //some input statements //some
processing //some output statements //tidy-up
job, if any return 0
36//attached files are placed here //function
prototypes //global variables void main() //
local variables are declared here //
initialization of variables, if any //function
calling statements
void functionOne()
37C Compilers and Its Families
- Turbo C
- Borland C
- Microsoft Visual C
- Quick C
- ANSI C
- Unix C