C Floyd Rows: Counter Practice
C Floyd's Triangle Program
A school pattern exercise asks for floyd rows: counter practice. Describe what one row contains before putting that row inside the outer loop.
Floyd’s triangle prints consecutive integers across rows of increasing length.
Before this exercise, review loop counters and stopping conditions. The worked program below applies those ideas to this specific problem.
Explain
Explain why floyd rows: counter practice uses this sequence of operations.
Trace
Trace the sample values and predict the printed result.
Apply
Print exactly two rows and predict both the characters and the leading spaces.
Floyd Rows: Counter Practice: follow the data
Given data
A school pattern exercise asks for floyd rows: counter practice. Describe what one row contains before putting that row inside the outer loop.
Rule
Floyd’s triangle prints consecutive integers across rows of increasing length.
Observed result
1 2 3 4 5 6 7 8 9 10
Understand the operation
The next number persists across row boundaries: rows begin with 1, 2 and 4 for the three-row sample.
The outer loop chooses a row; an inner loop chooses positions within that row. A newline belongs after the entire row, rather than after every printed character. Spaces are output data too, so count them explicitly.
Read the complete C program
The input values are written into this complete C17 example so the calculation can be reproduced without an unavailable service. Change the named data, rebuild and compare the actual output with your prediction.
C17 · complete program
#include <stdio.h>
int main(void) {
int rows = 4;
int next = 1;
for (int row = 0; row < rows; row++) {
for (int col = 0; col <= row; col++) {
if (col != 0) putchar(' ');
printf("%d", next++);
}
putchar('\n');
}
return 0;
}
Expected output
1
2 3
4 5 6
7 8 9 10
Run in C compiler →Follow the values through the code
C17 · code used in this explanation
#include <stdio.h>
int main(void) {
int rows = 4;
int next = 1;
for (int row = 0; row < rows; row++) {
for (int col = 0; col <= row; col++) {
if (col != 0) putchar(' ');
printf("%d", next++);
}
putchar('\n');
}
return 0;
}
The sample requests 4 rows, with indexes zero through 3.
The next number persists across row boundaries: rows begin with 1, 2 and 4 for the three-row sample.
Follow the worked calculation
Start with the sample
The sample requests 4 rows, with indexes zero through 3.
Apply the rule
The next number persists across row boundaries: rows begin with 1, 2 and 4 for the three-row sample.
Check the result
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
Try a small variation
C17 · code used in this explanation
#include <stdio.h>
int main(void) {
int rows = 4;
int next = 1;
for (int row = 0; row < rows; row++) {
for (int col = 0; col <= row; col++) {
if (col != 0) putchar(' ');
printf("%d", next++);
}
putchar('\n');
}
return 0;
}
Print exactly two rows and predict both the characters and the leading spaces.
Worked answer
The two-row answer reuses the row rule with a smaller requested count. Read the monospaced output: a leading space changes alignment even though it does not look like a printed symbol.
C17 · complete program
#include <stdio.h>
int main(void) {
int rows = 2;
int next = 1;
for (int row = 0; row < rows; row++) {
for (int col = 0; col <= row; col++) {
if (col != 0) putchar(' ');
printf("%d", next++);
}
putchar('\n');
}
return 0;
}
Expected output
1
2 3
Run in C compiler →Recognize the important boundaries
Restrict row counts to a practical positive limit before calculating widths or generating large output.
Keep the newline after each completed row. Spaces position the characters; moving that newline inside the inner loop changes the shape into separate lines.
Check your understanding
Choose the answer, then compare the reasoning for every option.
Use the idea independently
Floyd’s triangle prints consecutive integers across rows of increasing length.
Continue with nested loop control.
Language reference: WG14 C11 committee draft. These examples use the C17-compatible subset of the explained language features.
Reaching the recap and completing the quizzes are separate milestones.