Welcome in the world of `C`

Download Report

Transcript Welcome in the world of `C`

Welcome In The World Of

‘C’

TEXT BOOK:

Programming in ANCI ‘C By: E Balagurusamy. TMH  Reference Books: 1) The ‘C Programming Language By: Kernighan and Ritchie. PHI Second Edition.

2) Let Us ‘C By: Yashwant Kanitkar

TeachingScheme

During a week

3 Lectures + 1 Tutorial 1 Practical/Laboratory of two hour.

Marks system: Theory External Exam Practical Exam / Viva Internal (Avg. of 3 exams) Attendance 60 50 36 Total 150 4

Importance of Subject

 ‘C is the base language of any other programming language.

 To be a Good Programmer one must know fundamentals of C programming language.

History of ‘C’

•  Root of the morden language is ALGOL 1960. It’s first computer language to use a block structure.

It gave concept of structured programming.

 In 1967, Martin Richards developed a language, BCPL (Basic Combined Programming Language)

 In 1970,by Ken Thompson created a language called as ‘B’.

It used to create early version of Unix.  In 1972,by Dennis Ritchie introduced new language called as ‘C’ .

1972 Traditional C Dennis Ritchie

1978 K&R C Kernighan &Ritchie 1989 ANSI C ANSI Committee 1990 ANSI/ISO C ISO Committee

Features Of ‘C’

 It is a robust language.

 Programs written in ‘C’ are efficient and fast.

(Because of variety of data types and powerful operators)  Highly Portable. (related to OS)  Well suited for structured programming.

 Ability to extend itself.

Program & Programming Language

Program:- A Set of instructions which When carried out by processor for some Specific input, generates specific output. Programming language:- A specific manner of writing a program with some Predefined rules, symbols & their use as a part of language.

i.e. Pascal, C, C++, VC++, JAVA, VB.

Basic structure of ‘C’

 

1) Documentation Section :-

 It has set of comment lines(name of program, author details).

What is Comment line??

To guide a programmer. To write a note for function,operation,logic in between a program.

Non-executable statement.

Can’t be nested.

e.g: /* Hello /* abc */ Hi */ ERROR.

 

2)Link Section :-

It provides instructions to the compiler to link function from the system library.

# include Directive:-

To access the functions which are stored in the library, it is necessary to tell the compiler , about the file to be accessed.

Syntax:-

#include stdio.h is header file.

It defines all symbolic constants.

#define instuction defines value to a symbolic constant.

#define:-

 It is a preprocessor compiler directive, not a statement.

 Therefore it should not end with a semicolon.

 Generally written in uppercase.

Some variables that are used in more than on function, such variables (global variables) declared in the global declaration section.

It also declares all the user-defined function.

Every ‘C’ program must have one main() function section.

It contains two parts 1) It declares all variables used in the executable part.

2) Declaration part: Executable part: It has atleast one statement.

main( ) = main (void) No arguments Explicitly indicate no arguments

Documentation section Link Section Definition Section Global Declaration Section main() function section { Declaration part Executable part } Subprogram section Function1 Function2 … user defined function

 There are two ways to run programs written in a high level language.  The most common is to compile the program  The other method is to pass the program through an interpreter.

Compiler

Why compiler is require ?

As machine (a processor) can operate On binary code instruction only…..

If we use higher level language then … For execution of the program we must Convert it to lower level / machine level Code.

Means, A program that translates

source code

into

object code

.

The compiler derives its name from the way it works, looking at the entire piece of source code and collecting and reorganizing the instructions .

Interpreter:

which analyzes and executes each line of source code without looking at the entire program.

Advantage of interpreter: It can execute a program immediately. Compilers require some time before an executable program emerges. But, However, programs produced by compilers run much faster than the same programs executed by an interpreter.

C Compiler

- checks for syntax errors if any - on success coverts ‘C source code into object code form – which is nearer to machine…

Linker:

A linker is a program that combines object modules to form an executable program.

Types of languages

(I) Lower level languages: Languages which are very near to machine…. I.e. machine language, Assembly language.

(II) Higher level languages: Languages which are very near to programmer rather than to machine….

I.e. C++,Visual C++,Visual basic,Java.

BlockDiagram:

Represents only -> what should be the input?

-> what will be the output?

- One need not to worry about how the result generated…. - or what will be the logic for the program?

Block Diagram for making addition of two numbers : Input No1. & No2 .

PROGRAM

Output No1 + No2

Algorithm

Specifies steps of doing the things Irrespective of any programming language Example: Addition of two numbers Step 1: [Read two numbers] Read(no1) Read(no2) Step 2:[add two numbers into sum] summation = no1 + no2 Step 3:[Display the result] write (summation)

Flowchart

Represents the flow of program Symbols: Start-Begin/End Input/Output Rectangle Process box/operation box Decision Box Connector

Flowchart-example

Example: To add two numbers and display the result.

Start Read No1 and No2 from user SUMMATION = NO1 + NO2 Write Summation on monitor End

Files:- storage of logically related data Directory:- Placeholder which can store files and subdirectories within them.

File Extension:- special postfix attached to each file which indicates type of the file.

/* print hello*/ #include /* link section*/ void main() /* execution of program*/ statement*/ { print(“hello world”); /*executable }

“hello” is filename and “c” is file extension which indicates that hello is a ‘c program.