The First C Program
Armed with the knowledge about the types of variables, constants & keywords the next logical step is to combine them to form instructions. However, instead of this, we would write our first C program now. Once we have done that we would see in detail the instructions that it made use of. Before we begin with our first C program do remember the following rules that are applicable to all C programs:
(a) Each instruction in a C program is written as a separate statement. Therefore a complete C program would comprise of a series of statements.
(b) The statements in a program must appear in the same order in which we wish them to be executed; unless of course the logic of the problem demands a deliberate ‘jump’ or transfer of control to a statement, which is out of sequence.
(c) Blank spaces may be inserted between two words to improve the readability of the statement. However, no blank spaces are allowed within a variable, constant or keyword.
(d) All statements are entered in small case letters.
(e) C has no specific rules for the position at which a statement is to be written. That’s why it is often called a free-form language.
(f) Every C statement must end with a ;. Thus ;acts as a statement terminator.
Let us now write down our first C program. It would simply calculate simple interest for a set of values representing principle, number of years and rate of interest.
/* Calculation of simple interest */
/* Author gekay Date: 25/05/2004 */
main( )
{
int p, n ;
float r, si ;
p = 1000 ;
n = 3 ;
r = 8.5 ;
/* formula for simple interest */
si = p * n * r / 100 ;
printf ( "%f" , si ) ;
}
Now a few useful tips about the program...
- Comment about the program should be enclosed within /* */.
For example, the first two statements in our program are
comments.
- Though comments are not necessary, it is a good practice to
begin a program with a comment indicating the purpose of the
program, its author and the date on which the program was
written.
- Any number of comments can be written at any place in the
program. For example, a comment can be written before the
statement, after the statement or within the statement as shown
below:
/* formula */ si = p * n * r / 100 ;
si = p * n * r / 100 ; /* formula */
si = p * n * r / /* formula */ 100 ;
- Sometimes it is not so obvious as to what a particular
statement in a program accomplishes. At such times it is
worthwhile mentioning the purpose of the statement (or a set
of statements) using a comment. For example:
/* formula for simple interest */
si = p * n * r / 100 ;
- Often programmers seem to ignore writing of comments. But
when a team is building big software well commented code is
almost essential for other team members to understand it.
16 Let Us C
- Although a lot of comments are probably not necessary in this
program, it is usually the case that programmers tend to use
too few comments rather than too many. An adequate number
of comments can save hours of misery and suffering when you
later try to figure out what the program does.
- The normal language rules do not apply to text written within
/* .. */. Thus we can type this text in small case, capital or a
combination. This is because the comments are solely given
for the understanding of the programmer or the fellow
programmers and are completely ignored by the compiler.
- Comments cannot be nested. For example,
/* Cal of SI /* Author sam date 01/01/2002 */ */
is invalid.
- A comment can be split over more than one line, as in,
/* This is
a jazzy
comment */
Such a comment is often called a multi-line comment.
- main( ) is a collective name given to a set of statements. This
name has to be main( ), it cannot be anything else. All
statements that belong to main( )are enclosed within a pair of
braces { } as shown below.
main( )
{
statement 1 ;
statement 2 ;
Chapter 1:Getting Started 17
statement 3 ;
}
- Technically speaking main( )is a function. Every function has
a pair of parentheses ( )associated with it. We would discuss
functions and their working in great detail in Chapter 5.
- Any variable used in the program must be declared before
using it. For example,
int p, n ;
float r, si ;
- Any C statement always ends with a ;
For example,
float r, si ;
r = 8.5 ;
- In the statement,
si = p * n * r / 100 ;
*and /are the arithmetic operators. The arithmetic operators
available in C are +, -, *and /. C is very rich in operators.
There are about 45 operators available in C. Surprisingly there
is no operator for exponentiation... a slip, which can be
forgiven considering the fact that C has been developed by an
individual, not by a committee.
- Once the value of siis calculated it needs to be displayed on
the screen. Unlike other languages, C does not contain any
instruction to display output on the screen. All output to screen
is achieved using readymade library functions. One such
18 Let Us C
function is printf( ). We have used it display on the screen the
value contained in si.
The general form of printf( ) function is,
printf ( "<format string>", <list of variables> ) ;
<format string> can contain,
%f for printing real values
%d for printing integer values
%c for printing character values
In addition to format specifiers like %f, %dand %cthe
format string may also contain any other characters. These
characters are printed as they are when the printf( )is
executed.
Following are some examples of usage of printf( ) function:
printf ( "%f", si ) ;
printf ( "%d %d %f %f", p, n, r, si ) ;
printf ( "Simple interest = Rs. %f", si ) ;
printf ( "Prin = %d \nRate = %f", p, r ) ;
The output of the last statement would look like this...
Prin = 1000
Rate = 8.5
What is ‘\n’ doing in this statement? It is called newline and it
takes the cursor to the next line. Therefore, you get the output
split over two lines. ‘\n’ is one of the several Escape
Sequences available in C. These are discussed in detail in
Chapter 11. Right now, all that we can say is ‘\n’ comes in
Chapter 1:Getting Started 19
handy when we want to format the output properly on
separate lines.
printf( )can not only print values of variables, it can also
print the result of an expression. An expression is nothing but
a valid combination of constants, variables and operators.
Thus, 3, 3 + 2, c and a + b * c – d all are valid expressions.
The results of these expressions can be printed as shown
below:
printf ( "%d %d %d %d", 3, 3 + 2, c, a + b * c – d ) ;
Note that 3and calso represent valid expressions
Comments
Post a Comment