82 lines
2.0 KiB
Plaintext
82 lines
2.0 KiB
Plaintext
|
|
int main() {
|
||
|
|
printf("=== Break and Continue Tests ===\n");
|
||
|
|
|
||
|
|
printf("Test 1: Break statement\n");
|
||
|
|
int count = 0;
|
||
|
|
while (count < 10) {
|
||
|
|
count = count + 1;
|
||
|
|
if (count == 5) {
|
||
|
|
printf("Breaking at count = %d\n", count);
|
||
|
|
break;
|
||
|
|
}
|
||
|
|
printf("count = %d\n", count);
|
||
|
|
}
|
||
|
|
printf("Final count after break: %d\n", count);
|
||
|
|
printf("PASS: Break works\n");
|
||
|
|
|
||
|
|
printf("Test 2: Continue statement\n");
|
||
|
|
int i = 0;
|
||
|
|
int sum = 0;
|
||
|
|
while (i < 10) {
|
||
|
|
i = i + 1;
|
||
|
|
if (i == 3 || i == 7) {
|
||
|
|
printf("Skipping i = %d\n", i);
|
||
|
|
continue;
|
||
|
|
}
|
||
|
|
sum = sum + i;
|
||
|
|
printf("Adding i = %d, sum = %d\n", i, sum);
|
||
|
|
}
|
||
|
|
printf("Final sum (skipped 3 and 7): %d\n", sum);
|
||
|
|
printf("PASS: Continue works\n");
|
||
|
|
|
||
|
|
printf("Test 3: Break in nested if\n");
|
||
|
|
int j = 0;
|
||
|
|
while (j < 10) {
|
||
|
|
j = j + 1;
|
||
|
|
if (j > 3) {
|
||
|
|
if (j == 6) {
|
||
|
|
printf("Breaking at j = %d (nested if)\n", j);
|
||
|
|
break;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
printf("j = %d\n", j);
|
||
|
|
}
|
||
|
|
printf("Final j: %d\n", j);
|
||
|
|
printf("PASS: Nested break works\n");
|
||
|
|
|
||
|
|
printf("Test 4: Continue in nested if\n");
|
||
|
|
int k = 0;
|
||
|
|
int even_sum = 0;
|
||
|
|
while (k < 10) {
|
||
|
|
k = k + 1;
|
||
|
|
if (k > 0) {
|
||
|
|
int rem = k - (k / 2) * 2;
|
||
|
|
if (rem == 1) {
|
||
|
|
continue;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
even_sum = even_sum + k;
|
||
|
|
}
|
||
|
|
printf("Sum of even numbers 1-10: %d\n", even_sum);
|
||
|
|
printf("PASS: Nested continue works\n");
|
||
|
|
|
||
|
|
printf("Test 5: Multiple breaks and continues\n");
|
||
|
|
int n = 0;
|
||
|
|
int result = 0;
|
||
|
|
while (n < 20) {
|
||
|
|
n = n + 1;
|
||
|
|
if (n < 5) {
|
||
|
|
continue;
|
||
|
|
}
|
||
|
|
if (n > 15) {
|
||
|
|
break;
|
||
|
|
}
|
||
|
|
result = result + 1;
|
||
|
|
}
|
||
|
|
printf("Numbers counted between 5 and 15: %d\n", result);
|
||
|
|
printf("PASS: Multiple break/continue works\n");
|
||
|
|
|
||
|
|
printf("\n=== All Break/Continue Tests Completed ===\n");
|
||
|
|
return 0;
|
||
|
|
}
|