Upcoming SlideShare
×

# Control structures in C

186
-1

Published on

Published in: Technology
0 Likes
Statistics
Notes
• Full Name
Comment goes here.

Are you sure you want to Yes No
• Be the first to comment

• Be the first to like this

Views
Total Views
186
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
8
0
Likes
0
Embeds 0
No embeds

No notes for slide
• There are 3 types of control structures in C.
1) Decision or conditional statements: if, if else, nested if, switch case
2) Looping statements: while, do while, for, nested for
3) Jumping statements:
-> Conditional jumping: break, continue.
-> Unconditional jumping: return, goto
• ### Control structures in C

2. 2. Disclaimer: This presentation is prepared by trainees of baabtra as a part of mentoring program. This is not official document of baabtra –Mentoring Partner Baabtra-Mentoring Partner is the mentoring division of baabte System Technologies Pvt . Ltd
3. 3. Flow of control • Unless specified, the order of statement execution is linear: one statement after another in sequence • A control structure is any mechanism that departs from the default straight-line execution.
4. 4. 2 1 3
5. 5. Selection statements • Used to choose which statement to be executed next • Therefore they are sometimes called conditional statements • Conditional statements give us the power to make basic decisions • The C conditional statements are the: – if statement – if-else statement – switch statement
6. 6. The if Statement The if statement has the following syntax: if ( condition ) statement; • if is a C reserved keyword. • The condition must be a boolean expression. It is evaluated to either true or false. • If the condition is true, the statement is executed. • If it is false, the statement is skipped.
7. 7. The if-else Statement • If the condition is true, statement1 is executed; if the condition is false, statement2 is execute if ( condition ) statement1; else statement2;
8. 8. Consider the following example, int grade=76; if ( grade >= 60 ) printf( "Passedn"); else printf( "Failedn"); The above code will produce an output: Passed Since the true statement only executes
9. 9. • An if statement which is within another if or else is called nested if. • Braces can be used to specify the if statement to which an else clause belongs Nested if statements
10. 10. Syntax of nested if: if(condition1) { if(condition2) do this; else //this else with condition2 { do this; and this; } } else //this else with condition1 do this; Note that in C an else statement always refers to the nearest if that is within the same block of else.
11. 11. An example for nested if: if(avg>=90) printf("Student %s gets an A grade",name); else if(avg>=80 &&avg<90) printf("Student %s gets a B grade",name); else if(avg>=70 &&avg<0) printf("Student %s gets a C grade",name); else if(avg>=60 &&avg<70) printf("Student %s gets a D grade",name); else if(avg<60) printf("Student %s failed"); Nested if (contd…)
12. 12. The Switch statement • The switch statement provides another way to decide which statement to execute next • The switch statement evaluates an expression, then attempts to match the result to one of several possible cases • Each case contains a value and a list of statements • The flow of control transfers to statement associated with the first case value that matches
13. 13. • Often a break statement is used as the last statement in each case's statement list • A break statement causes control to transfer to the end of the switch statement • If a break statement is not used, the flow of control will continue into the next case • Sometimes this may be appropriate, but often we want to execute only the statements associated with one case The Switch statement(Contd…)
14. 14. • A switch statement can have an optional default case • If the default case is present, control will transfer to it if no other case value matches • If there is no default case, and no other value matches, control falls through to the statement after the switch The Switch statement(Contd…)
15. 15. • The expression of a switch statement must result in an integral type, meaning an integer (byte, short, int,) or a char • It cannot be a floating point value (float or double) • The implicit test condition in a switch statement is equality • You cannot perform relational checks with a switch statement The Switch statement(Contd…)
16. 16. The general syntax of a switch statement is: switch ( expression ) { case value1 : statement-list1 case value2 : statement-list2 case value3 : statement-list3 default: statement } switch and case are reserved words If expression matches value2, control jumps to here The Switch statement(Contd…)
17. 17. switch (option) { case 'A': aCount++; break; case 'B': bCount++; break; case 'C': cCount++; break; default: otherCount++; break; } The Switch statement(Contd…) An example for switch statement:
18. 18. Iteration Statements • Also known as loops • It allow a set of instructions to be executed until a certain condition is met. • The loop structures available in C are: • For loop • While loop • Do while loop
19. 19. The for Loop • The syntax of for statement in C: for (initialization expression;loop repetition condition;update expression) { statement } • The initialization expression set the initial value of the loop control variable. • The loop repetition condition test the value of the loop control variable. • The update expression update the loop control variable.
20. 20. Nested Loops • Nested loops consist of an outer loop with one or more inner loops. • e.g., for (i=1;i<=100;i++){ for(j=1;j<=50;j++){ … } } • The above loop will run for 100*50 iterations. 5-22 Inner loop Outer loop
21. 21. For loop: An example /*For loop to print even numbers below 100*/ for(i=2;i<100;i=i+2) { printf("%d,",i); }
22. 22. The While loop • The syntax of do-while statement in C: do statement while (loop repetition condition); • The statement is first executed. • If the loop repetition condition is true, the statement is repeated. • Otherwise, the loop is exited.
23. 23. An Example of the do-while Loop /* Find even number input */ do{ printf(“Enter a value: ”); scanf(“%d”, &num); }while (num % 2 !=0) 5-25 This loop will repeat if the user inputs odd number.
24. 24. Jump Statements • Also called unconditional branching. • It means transfer of control to a specified statement. • C has four statements that perform unconditional branch – Call/return – Goto – Break – Continue
25. 25. The return statement • Used to return fro a function • It returns to the point at which the function is called. • It can have a value with it. • General form: return (expression); • The expression is optional • Function can have more than one return statement, but will return at the first return statement
26. 26. The goto statement • Allows to transfer control to any other statement in the function. • General form label:statement goto label;
27. 27. The break statement • It can be used to terminate a case in switch statement. • Can used to force immediate loop termination by checking a condition
28. 28. • Here, loop will terminate when i=10 for(i=0;i<=100;i++) { if(i==10) { break; } printf(“%d”,i); }
29. 29. The Continue Statement • It allows to skip the current iteration and hence wont run the remaining statements in the loop.
30. 30. for(i=0;i<=100;i++) { if(i==10) { break; } printf(“%d”,i); } • Here, loop will skip the printf statement when i=10 and incement i to 11
31. 31. thank you
32. 32. Doubts…?
33. 33. Want to learn more about programming or Looking to become a good programmer? Are you wasting time on searching so many contents online? Do you want to learn things quickly? Tired of spending huge amount of money to become a Software professional? Do an online course @ baabtra.com We put industry standards to practice. Our structured, activity based courses are so designed to make a quick, good software professional out of anybody who holds a passion for coding.
34. 34. Follow us @ twitter.com/baabtra Like us @ facebook.com/baabtra Subscribe to us @ youtube.com/baabtra Become a follower @ slideshare.net/BaabtraMentoringPartner Connect to us @ in.linkedin.com/in/baabtra Give a feedback @ massbaab.com/baabtra Thanks in advance www.baabtra.com | www.massbaab.com |www.baabte.com
35. 35. Emarald Mall (Big Bazar Building) Mavoor Road, Kozhikode, Kerala, India. Ph: + 91 – 495 40 25 550 NC Complex, Near Bus Stand Mukkam, Kozhikode, Kerala, India. Ph: + 91 – 495 40 25 550 Cafit Square, Hilite Business Park, Near Pantheerankavu, Kozhikode Start up Village Eranakulam, Kerala, India. Email: info@baabtra.com Contact Us
1. #### A particular slide catching your eye?

Clipping is a handy way to collect important slides you want to go back to later.