Course Content
C Basics
C Basics
For, Continue
For Loop
The for
loop incorporates the counter's initialization, the condition to exit the loop, and the counter's update.
Let's take the example from the previous lesson (displaying array elements) and reframe it using a for
loop:
Main
#include <stdio.h> int main() { int array[] = { 3, 6, 2, 134, 45, 2, 564, 8, 3, 531 }; for (int i = 0; i < 10; i++) { printf("Index of element: %d\tValue of element: %d\n", i, array[i]); } return 0; }
Loop's Flexibility
You can use any valid expression as the update counter
. This means the counter can adapt based on any valid rule, such as (++x * 3) - 5
.
Furthermore, the counter can increment by characters instead of numbers.
Main
#include <stdio.h> int main() { for (char ch = 'a'; ch <= 'z'; ch++) { printf("ASCII value for %c is %d\n", ch, ch); } return 0; }
Note
Keep in mind that characters are stored as numbers in memory.
Even if you leave out parts of the loop, like the counter initialization, the program will still compile. However, the semicolon ;
remains essential:
Main
#include <stdio.h> int main() { int i = 0; // without counter initialization for (printf("It`s count initialization, but printf...\n"); i <= 4; i++) { printf("i = %d\n", i); } return 0; }
You can use the comma ,
to separate parts within the loop:
Main
#include <stdio.h> int main() { int i; int n; for (i = 0, n = 5; i <= 5; i++, n++) { printf("i = %d\t n = %d\n", i, n); } return 0; }
Continue
In loops, both the break
and continue
commands come in handy. While the break
statement forces an exit from the loop, the continue
command prompts a skip to the subsequent iteration.
Consider a program designed to exclude negative integers, utilizing the continue
operator:
Main
#include <stdio.h> int main() { int array[] = { 124, 235, -321, 32, 54, -549, 23445, 5534, -433 }; printf("Positive elements of array:\n"); for (int i = 0; i < 10; i++) { if (array[i] < 0) { continue; } printf("%d ", array[i]); } return 0; }
New Operators
The following operators can also function as expressions to update the counter:
Operator | Expression Example | Description |
+= | a += 5 | Equivalent to a = a + 5 |
-= | a -= 5 | Equivalent to a = a - 5 |
*= | a *= 5 | Equivalent to a = a * 5 |
/= | a /= 5 | Equivalent to a = a / 5 |
%= | a %= 5 | Equivalent to a = a % 5 |
Thanks for your feedback!