User:Tara61062/sandbox

Notes on C Programming!

==== Lecture 1 ====

Introduction to Computer

All digital computers are basically electronic devices that can transmit, store and manipulate information (data). The data may be numeric, character, graphic, and sound. So, a computer can be defined as it is an electronic device which gets raw data as input, processes it and gives result as output, all under instructions given to it.

To process a particular set of data, the computer must be given an appropriate set of instructions, called a program. Such instructions are written using codes which computer can understand. Such set of codes is known as language of computer. Types of programming language

Many different languages can be used to program a computer. As we know that computer is composed of millions of switches which acts like electric switch. Such a switch has two states, ON and OFF, and can be represented with 1 and 0. So, a computer can understand only 0, and 1, which is known as BInary digiTS, in short BITS. So, language which uses these binary codes to instruct a computer is known as Machine language. Machine language is very rarely used to instruct a computer because it is very difficult and machine dependent (different machine may need different machine codes).

Instructions written in high level language is more compatible with human languages. Hence, it is easier to instruct computer using it, however it is necessary to be translated into machine codes using translator such as compiler and interpreter. Such programs written in High level language, are portable (can be used in any computer without or with some alteration). A compiler or interpreter is itself a computer program that accepts a high level program as input and generates a corresponding machine language program as output. The original high level program is called the source program and the resulting machine language program is called the object program. Every high level language must have its own compiler or interpreter for a particular computer.

Introduction to C

It is a high level programming language. Instructions consist of algebraic expressions, English keywords such as if, else, for, do, while etc. In C, a program can be divided down into small modules. Hence, it is also called as structured programming language. •	Flexible to use as system programming as well as application programming. •	Huge collection of operators and library functions. •	User can create own user defined functions. •	C compilers are commonly available for all types of computers and program developed in C, can be executed in any computer without or with some alteration, hence it's portable. •	A program developed in C is compact and highly efficient. •	Because of modularity, it is easy to debug (to find error). •	It can also be used as low level language. ==== Lecture ====2

History of C

C was developed in the 1970's by Dennis Ritchie at Bell Lab. It was developed from earlier languages, called BCPL and B which were also developed at Bell Lab. It was confined within Bell Lab till 1978. Dennis Ritchie and Brian Kernighan further developed the language. By mid 80's, it became more popular. Later on, it was standardized by ANSI (American National Standard Institute).

Structure of a C program

Every C program consists of one or more functions, one of which must be called main. The program always begins by executing the main function however it contains other functions. Each function must contain:

	A function heading, that consists function name and arguments enclosed in parenthesis.

	A pair of compound statement (curly braces).

	It may consist of number of input/output statements.

	Library file access

	Comments

Program:

/* A Program to find sum of two integer numbers 12, & 17 */


 * 1) include

void main

{

int x=12, y= 17;

z= x + y;

printf(" sum is %d", z);

}

C Fundamentals

The basic elements of C includes C character set, identifiers, keywords, data types, constants, variables, arrays, declarations, expressions and statements.

The C character set

C uses uppercase A to Z, the lowercase letters a to z, the digits 0 to 9 and certain special characters such as: ! 	^ 	# 	%	^	&	*	(	)	~ _	- =	+	\	|	[	]	{	}	;	:	' "	,	<	.	>	/	?	 (blank)

Most versions of C also allow using @ $.

It can be combination of certain characters such as \n, \t to represent non-printable characters new line, horizontal tab respectively. Such character combination to print non printable character is known as escape sequence.

Identifiers Identifiers are the names given to various element of program such as variables, functions and arrays. Identifiers consist of letters and digits. Rules are to be followed for identifiers:

	It may consist of character, digits but first character must be letter.

	It permits uppercase and lowercase but they not interchangeable.

	It may begin with underscore (_) too.

	Most of C allows 31 chars.

	Space and some special character are not allowed.

eg. x1, sum, _temp, Table etc.

Some invalid identifiers are 1x, "x", -temp, error flag etc. Keywords

There are certain reserved words in C, which are called as keywords and such words has predefined meaning. These words can only be used for their intended purpose.

The standard keywords are:

Some compilers may also include: ada	far	near	asm	fortran pascal	entry	huge

Note: keywords must be in lowercase. Constant Constant is a basic element of C which doesn't change its value during execution of program. Four basic types of constant in C are:

constant type	example	illegal integer 	200, -5	12,200; 3.0; 10 20; 090; 1-2 floating-point 	20.5; -2.5; 1.6e+8	1; 1,00.0; 2e+10.2 character 	'a'; '3'; ' '; '\n'	3 string 	"anuj"	'st xavier's'

Variables

A variable is an identifier that is used to represent some specified type of information within a designated portion of the program. A variable represents a single data item, that is, a numerical quantity, or a character constant. Such data item can be accessed later in any portion of program by referring name of variable.

Array

An array is an identifier that refers to a collection of data items which all have the same name with different subscript but they must be same data type (i.e. integer, floating point or character). Individual data item in an array is known as array element.

e.g. 	int a=4, b=5, c=2, d= -5, e=0; In terms of array, it can be expressed as follows: int x[5] = {4, 5, 2, -5, 0}; where, x[0] = 4 x[1] = 5 x[2] = 2 x[3] = -5 x[4] = 0

Data types

C supports different types of data, each of which may be represented differently within the computer's memory. But memory requirement for each data type may vary from one compiler to another.

Data type	Description	Memory in bytes int	integer quantity	2 char	single character	1 float	floating point number	4 double	double precision floating point number	8

Declaration

All variables must be declared before they appear in a program in order to reserve memory space for each data item. A declaration may consist of one or more variables of same data type. A declaration begins with data type following with one or more variables and finally ends with a semicolon. e.g.	int  x=6, y=7, z;	float  a=3.0, b=1.5e+5, c;	char section='a', name[20] = "Xavier";

Program: /* A Program to find sum of any two input integer numbers */


 * 1) include

void main

{

int x, y;

printf("\n Enter a number");

scanf(" %d",&x);

printf("\n Enter another number");

scanf("%d",&y);

z= x + y;

printf(" sum is %d", z);

}

Program: /* A Program to find area of a circle for input radius */


 * 1) include

void main

{

float a, r;

printf("\n Enter radius");

scanf(" %d",&r);

a = 3.1415 * r * r;

printf(" \n area of circle is %f", a);

}

Expression

An expression represents a single data item, such as a number or a character. The expression may consist of a single entity, such as a constant, a variable, an array element or a reference to a function. It may consist of some combination of such entities interconnected by one or more operators. a > b	c = a + b

Statement

A statement causes the computer to carry out some action. Three different types of statements are:

Expression statement : An expression statement consist of an expression followed with a semicolon. e.g. 	c = a + b;

Compound statement : A compound statement consists of several individual statements enclosed within a pair of braces ( { and }). e.g.	{ int x=3; printf ("%d", x); } Control statement : A control statement is such a statement which controls execution of other statements. e.g.	if(x>0) printf(" x is positive"); Symbolic Constant

A symbolic constant is name that substitutes for a sequence of characters. The characters may be numeric, character or string constant. It replaces in place of numeric, character or string constant in the program. While compiling the program, each occurrence of a symbolic constant is replaced with its corresponding character sequence.

A symbolic constant is defined by writing e.g.
 * 1) define   name    text
 * 1) define	PI	  3.1415
 * 2) define	NAME    "Kathmandu"

Program: /* A Program to find area and perimeter of a circle for input radius */


 * 1) include 


 * 1) define  PI  3.1415

void main

{

float a, r, p;

printf("\n Enter radius of circle");

scanf("%f",&r);

a = PI * r * r;

p = 2*PI*r;

printf(" \n area of circle is %f", a);

printf(" \n perimeter of circle is %f", p);

}

DO IT:

Problem 1:	Write a program to find area of a triangle for input base and height.

Problem 2: 	Write a program to find Total Amount for input Rate and Quantity.

Problem 3: 	Write a program to convert length in cm to inch for input length.

Problem 4:	Write a program to convert temperature in Celsius to temperature in Fahrenheit for input temperature.