ArtsAutosBooksBusinessEducationEntertainmentFamilyFashionFoodGamesGenderHealthHolidaysHomeHubPagesPersonal FinancePetsPoliticsReligionSportsTechnologyTravel

Loop in C Programming Language

Updated on July 8, 2018
rajkishor09 profile image

Raj is an ardent coder who loves exploring new technology. He is an IT pro with 9 years of exp in C#, Angular, React, Vue.

What is loop in C language?

Loop is one of the important parts of C language and study of C language is incomplete without this. So let’s head towards completion of our knowledge about C language. As a dedicated C language leaner, right now you should have two questions. What is loop and why we need loop in our C program?

For your better understanding let me make this easy, loop means repeating something. In many scenarios, in our program, we need to execute same piece of code so there we can use loop instead of writing same code repeatedly. A simple example is our media player application where we can repeat one or all songs, and it will keep playing that until we disable repeat song.

Loop in C language executes block of code depending on condition we provide, for example, I told you to write your name for 10 times on a piece of paper. So here 10 times is condition, you have to write your name for 10 times only, neither less than 10 nor greater than 10. We will examine same example later.

Types of loop in C language

There are 3 type of loop which helps us to repeat code block of program and they are:

  1. For loop (Click here to view tutorial on For loop)
  2. While loop (Click here to view tutorial on While loop)
  3. Do – while loop (Click here to view tutorial on Do-While loop)

I explained about each loop in details in separate article dedicated to each topic.


Advantages of loop in C language

Many people don’t know this fact that loop is powerful feature of C programming language and it can help developer and programmer to reduce many lines of code to few lines. I have example to prove my point. Below is a simple C program example which displays table from 2-10 using with and without loop. After reviewing below code you will come to know the power of loop.

#include<stdio.h>
#include<conio.h>

void main()
{

int i, j;
clrscr();

printf("Table with loop.\n\n");
for(i=2;i<=10;i++)
{
	 for(j=1;j<=10;j++)
	 {
		printf("%3d   ",i*j);
	 }
	 printf("\n");
}

printf("\nTable without loop.\n\n");

printf("%3d   ",2*1);
printf("%3d   ",2*2);
printf("%3d   ",2*3);
printf("%3d   ",2*4);
printf("%3d   ",2*5);
printf("%3d   ",2*6);
printf("%3d   ",2*7);
printf("%3d   ",2*8);
printf("%3d   ",2*9);
printf("%3d   ",2*10);

getch();
}
Table using for loop.
Table using for loop.

Reader's Feedback

Did this tutorial help you to learn about loops in C programming?

See results

Explanation

Let’s review this code little bit. Our first concerning area is code block (line no. 11- 18). In this block we have two “for loops” to produce table from 2-10. Outer “for loop” (where we are using “i” variable) is responsible for printing new line along with executing inner “for loop” (where we are using “j” variable).

The logic to produce table is that outer loop starts with value of “i” equals to 2 and inner loop starts with value of “j” equals to 1. In inner loop I am multiplying value of “i” with value of “j” (2*1 = 2) and printing the result. In next cycle value of “j” would be equals to 2 (i.e. 2*2 = 4) and again three space after printing the result. This will continue till value of “j” reaches to 10 after that value of “i” will increase and this process will continue.

In printf statement (printf("%3d",i*j);), “%3d” is used as output format. It will print values using three character space format like 009 (replace 0 with empty space). This is just to maintain alignment.

Now come to code block (line no. 22- 31), this is lengthy way to achieve the above output. That block only prints table of 2 and requires 10 lines of code whereas “for loop” code requires 8 lines of code to produce table of 2-10. If you want to produce table till 20 then you have to modify only one variable (in outer loop condition i<=10 replace 10 with 20, that’s it).

© 2011 RAJKISHOR SAHU

Comments

    0 of 8192 characters used
    Post Comment

    • ratnesh-kumar profile image

      RATNESH KUMAR PRASAD 

      19 months ago from DELHI

      Very very interesting info

    • profile image

      ratnesh Kumar Yadav 

      6 years ago

      Most important point of loop!

    • profile image

      samrat 

      6 years ago

      Wonderful explaination of while loop

    • profile image

      anand ri 

      6 years ago

      very nice

    • profile image

      sraddha 

      6 years ago

      easy to understand and learn

    • profile image

      peterlatigo 

      6 years ago

      really wonderful tutorial but thought after i=2 executes its supposed to go to a new line down not to the right to execute 1=2, pse help. was there need to use tabs \t to generate table

    working

    This website uses cookies

    As a user in the EEA, your approval is needed on a few things. To provide a better website experience, hubpages.com uses cookies (and other similar technologies) and may collect, process, and share personal data. Please choose which areas of our service you consent to our doing so.

    For more information on managing or withdrawing consents and how we handle data, visit our Privacy Policy at: https://hubpages.com/privacy-policy#gdpr

    Show Details
    Necessary
    HubPages Device IDThis is used to identify particular browsers or devices when the access the service, and is used for security reasons.
    LoginThis is necessary to sign in to the HubPages Service.
    Google RecaptchaThis is used to prevent bots and spam. (Privacy Policy)
    AkismetThis is used to detect comment spam. (Privacy Policy)
    HubPages Google AnalyticsThis is used to provide data on traffic to our website, all personally identifyable data is anonymized. (Privacy Policy)
    HubPages Traffic PixelThis is used to collect data on traffic to articles and other pages on our site. Unless you are signed in to a HubPages account, all personally identifiable information is anonymized.
    Amazon Web ServicesThis is a cloud services platform that we used to host our service. (Privacy Policy)
    CloudflareThis is a cloud CDN service that we use to efficiently deliver files required for our service to operate such as javascript, cascading style sheets, images, and videos. (Privacy Policy)
    Google Hosted LibrariesJavascript software libraries such as jQuery are loaded at endpoints on the googleapis.com or gstatic.com domains, for performance and efficiency reasons. (Privacy Policy)
    Features
    Google Custom SearchThis is feature allows you to search the site. (Privacy Policy)
    Google MapsSome articles have Google Maps embedded in them. (Privacy Policy)
    Google ChartsThis is used to display charts and graphs on articles and the author center. (Privacy Policy)
    Google AdSense Host APIThis service allows you to sign up for or associate a Google AdSense account with HubPages, so that you can earn money from ads on your articles. No data is shared unless you engage with this feature. (Privacy Policy)
    Google YouTubeSome articles have YouTube videos embedded in them. (Privacy Policy)
    VimeoSome articles have Vimeo videos embedded in them. (Privacy Policy)
    PaypalThis is used for a registered author who enrolls in the HubPages Earnings program and requests to be paid via PayPal. No data is shared with Paypal unless you engage with this feature. (Privacy Policy)
    Facebook LoginYou can use this to streamline signing up for, or signing in to your Hubpages account. No data is shared with Facebook unless you engage with this feature. (Privacy Policy)
    MavenThis supports the Maven widget and search functionality. (Privacy Policy)
    Marketing
    Google AdSenseThis is an ad network. (Privacy Policy)
    Google DoubleClickGoogle provides ad serving technology and runs an ad network. (Privacy Policy)
    Index ExchangeThis is an ad network. (Privacy Policy)
    SovrnThis is an ad network. (Privacy Policy)
    Facebook AdsThis is an ad network. (Privacy Policy)
    Amazon Unified Ad MarketplaceThis is an ad network. (Privacy Policy)
    AppNexusThis is an ad network. (Privacy Policy)
    OpenxThis is an ad network. (Privacy Policy)
    Rubicon ProjectThis is an ad network. (Privacy Policy)
    TripleLiftThis is an ad network. (Privacy Policy)
    Say MediaWe partner with Say Media to deliver ad campaigns on our sites. (Privacy Policy)
    Remarketing PixelsWe may use remarketing pixels from advertising networks such as Google AdWords, Bing Ads, and Facebook in order to advertise the HubPages Service to people that have visited our sites.
    Conversion Tracking PixelsWe may use conversion tracking pixels from advertising networks such as Google AdWords, Bing Ads, and Facebook in order to identify when an advertisement has successfully resulted in the desired action, such as signing up for the HubPages Service or publishing an article on the HubPages Service.
    Statistics
    Author Google AnalyticsThis is used to provide traffic data and reports to the authors of articles on the HubPages Service. (Privacy Policy)
    ComscoreComScore is a media measurement and analytics company providing marketing data and analytics to enterprises, media and advertising agencies, and publishers. Non-consent will result in ComScore only processing obfuscated personal data. (Privacy Policy)
    Amazon Tracking PixelSome articles display amazon products as part of the Amazon Affiliate program, this pixel provides traffic statistics for those products (Privacy Policy)