0% found this document useful (0 votes)
10 views122 pages

01 Fundamentals of C- Programming

The document provides an overview of the fundamentals of C programming, covering topics such as character sets, data types, constants, variables, and operators. It explains the various types of operators, including arithmetic, relational, logical, and conditional operators, as well as the rules for naming variables and operator precedence. Additionally, it includes examples of expressions and the evaluation process in C programming.

Uploaded by

adityaop227
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views122 pages

01 Fundamentals of C- Programming

The document provides an overview of the fundamentals of C programming, covering topics such as character sets, data types, constants, variables, and operators. It explains the various types of operators, including arithmetic, relational, logical, and conditional operators, as well as the rules for naming variables and operator precedence. Additionally, it includes examples of expressions and the evaluation process in C programming.

Uploaded by

adityaop227
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 122

C Programming

VSEC102

01
Fundamentals of C- Programming
Fundamentals of C- Programming
Character Set, Identifiers and keywords, Data types, Constants,
Variables.
Operators-Arithmetic, Relational and logical, Assignment,
Unary, Conditional, Bitwise, Comma, other operators.
Expression, statements, Library Functions, Preprocessor.

Data Input and Output – getchar( ), putchar( ),


scanf( ), printf( ), gets( ), puts( ), Structure of C program .
Character Set
•Alphabets:

Character Set Includes all uppercase ( A Zcap A cap Z 𝐴𝑍) and lowercase (aza z𝑎𝑧)
English letters.
•Digits: Contains the ten base-10 digits ( 09).
•Special characters: A large set of symbols used for various purposes,
including punctuation, arithmetic operations, and logical expressions. This
includes !, @, #, $, %, ^, &, *, (, ), -, _, +, =, {, }, [, ], :, ;, ', ", <, >, ,, ., ?, /,
\, |, and ~.
•White-space characters: Used for formatting and include blank space,
horizontal tab (\t), newline (\n), vertical tab (\v), form feed (\f), and
carriage return (\r).
•Escape sequences: Special character combinations (starting with a
backslash) used to represent non-printable characters or control output,
such as \n for a new line and \t for a tab.
Identifiers and keywords
Data types in C
Constants in C

In C programming, const is a keyword used to declare a variable as constant, meaning its

value cannot be changed after it is initialized. It is mainly used to protect variables from

being accidentally modified, making the program safer and easier to understand. These

constants can be of various types, such as integer, floating-point, string, or character

constants.
Constants in C
Initialization with Declaration Constants Using #define
Real world examples of Const
C Variables
A variable in C is a named piece of memory which is used to store data and access it
whenever required. It allows us to use the memory without having to memorize the exact
memory address.
To create a variable in C, we have to specify a name and the type of data it is going to
store in the syntax.
data_type name;
C Variables
Rules for Naming Variables in C
We can assign any name to a C variable as long as it follows the following rules:
•A variable name must only contain letters, digits, and underscores.
•It must start with an alphabet or an underscore only. It cannot start with a
digit.
•No white space is allowed within the variable name.
•A variable name must not be any reserved word or keyword.
•The name must be unique in the program.
Accessing
Variables
C Variables Changing Stored
Values
Operator in C
Operators & Expressions
Definition

“An operator is a symbol (+,-,*,/) that directs the


computer to perform certain mathematical or logical
manipulations and is usually used to manipulate data and
variables”
Ex: a+b
Operators in C
1. Arithmetic operators
2. Relational operators
3. Logical operators
4. Assignment operators
5. Increment and decrement operators
6. Conditional operators
7. Bitwise operators
8. Special operators
Arithmetic
operators
Operator example Meaning
+ a+b Addition –unary
- a–b Subtraction- unary
* a*b Multiplication
/ a/b Division
% a%b Modulo division- remainder
Relational Operators

Operator Meaning
< Is less than
<= Is less than or equal to
> Is greater than
>= Is greater than or equal
to
== Equal to
!= Not equal to
Logical Operators
Operator Meaning
&& Logical AND
|| Logical OR
! Logical NOT

Logical expression or a compound relational


expression-
An expression that combines two or more
relational expressions
Ex: if (a==b && b==c)
Truth Table
Value of the expression
a b
a && b a || b
0 0 0 0
0 1 0 1
1 0 0 1
1 1 1 1
Assignment operators

Syntax:
v op = exp;
Where v = variable,
op = shorthand assignment operator
exp = expression
Ex: x=x+3
x+=3
Shorthand Assignment
operators
Simple assignment
Shorthand operator
operator
a = a+1 a + =1
a = a-1 a - =1
a = a* (m+n) a * = m+n
a = a / (m+n) a / = m+n
a = a %b a %=b
Increment & Decrement Operators

C supports 2 useful operators namely


1. Increment ++
2. Decrement – operators
The ++ operator adds a value 1 to the operand
The – operator subtracts 1 from the operand
++a or a++
--a or a--
Rules for ++ & -- operators

1. These require variables as their operands


2. When postfix either ++ or – is used with
the variable in a given expression, the
expression is evaluated first and then it
is incremented or decremented by one
3. When prefix either ++ or – is used with
the variable in a given expression, it is
incremented or decremented by one first
and then the expression is evaluated
with the new value
Examples for ++ & -- operators

Let the value of a =5 and b=++a then


a = b =6
Let the value of a = 5 and b=a++ then
a =5 but b=6
i.e.:
1. a prefix operator first adds 1 to the operand and then
the result is assigned to the variable on the left
2. a postfix operator first assigns the value to the
variable on left and then increments the operand.
Conditional operators

Syntax:
exp1 ? exp2 : exp3
Where exp1,exp2 and exp3 are expressions
Working of the ? Operator:
Exp1 is evaluated first, if it is nonzero(1/true) then the expression2 is evaluated
and this becomes the value of the expression,
If exp1 is false(0/zero) exp3 is evaluated and its value becomes the value of the
expression
Ex: m=2;
n=3
r=(m>n) ? m : n;
Bitwise operators
These operators allow manipulation of data at the
bit level
Operator Meaning
& Bitwise AND
| Bitwise OR
^ Bitwise exclusive OR
<< Shift left
>> Shift right
Special operators

1. Comma operator ( ,)
2. sizeof operator – sizeof( )
3. Pointer operators – ( & and *)
4. Member selection operators – ( . and ->)
Arithmetic Expressions
Algebraic expression C expression
axb-c a*b-c
(m+n)(x+y) (m+n)*(x+y)
ab a*b/c
c

3x2+2x+1 3*x*x+2*x+1
a a/b
b

a b c S=(a+b+c)/2
S=
2
Arithmetic Expressions
Algebraic expression C expression
area= s( s  a)( s  b)( s  c) area=sqrt(s*(s-a)*(s-b)*(s-c))

Sin 
 b 

sin(b/sqrt(a*a+b*b))
 2 2 
 a b 

 x   y 
1     xy
2
tow1=sqrt((rowx-rowy)/2+tow*x*y*y)
 2 

   y 
2
tow1=sqrt(pow((rowx-rowy)/2,2)+tow*x*y*y)
1   x   xy
2

 2 

  y=(alpha+beta)/sin(theta*3.1416/180)+abs(x)
y  x
sin 
Precedence of operators
BODMAS RULE-
Brackets of Division Multiplication Addition Subtraction
Brackets will have the highest precedence and have to be
evaluated first, then comes of , then comes
division, multiplication, addition and finally subtraction.
C language uses some rules in evaluating the expressions
and they r called as precedence rules or sometimes also
referred to as hierarchy of operations, with some operators
with highest precedence and some with least.
The 2 distinct priority levels of arithmetic operators in c
are-
Highest priority : * / %
Lowest priority : + -
Rules for evaluation of expression
1. First parenthesized sub expression from left to right are evaluated.
2. If parentheses are nested, the evaluation begins with the innermost sub
expression
3. The precedence rule is applied in determining the order of application of
operators in evaluating sub expressions
4. The associatively rule is applied when 2 or more operators of the same
precedence level appear in a sub expression.
5. Arithmetic expressions are evaluated from left to right using the rules of
precedence
6. When parentheses are used, the expressions within parentheses assume
highest priority
Hierarchy of operators

Operator Description Associativity


( ), [ ] Function call, array Left to Right
element reference
+, -, ++, - Unary plus, minus,
-,!,~,*,& increment, decrement,
logical negation, 1’s Right to Left
complement, pointer
reference, address
*, / , % Multiplication, Left to Right
division, modulus
Example 1
Evaluate x1=(-b+ sqrt (b*b-4*a*c))/(2*a) @ a=1, b=-
5, c=6
=(-(-5)+sqrt((-5)(-5)-4*1*6))/(2*1)
=(5 + sqrt((-5)(-5)-4*1*6))/(2*1)
=(5 + sqrt(25 -4*1*6))/(2*1)
=(5 + sqrt(25 -4*6))/(2*1)
=(5 + sqrt(25 -24))/(2*1)
=(5 + sqrt(1))/(2*1)
=(5 + 1.0)/(2*1)
=(6.0)/(2*1)
=6.0/2 = 3.0
Example 2
Evaluate the expression when a=4
b=a- ++a
=a – 5
=5-5
=0

You might also like